// Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符 /*
* 一 Java操作符
*
* Java操作符都有哪些?
* +, -, *, /, %, ++, --
* 这里需要注意 a++ 和 ++a 的区别,后面说;
*/ /*
public class Javase{
public static void main(String[] args){
int a = 10;
int b = 20;
int c = 30;
System.out.println( a+b );//a+b=30;
System.out.println( b-a );//b-a=10;
System.out.println( a*b );//a*b=200;
System.out.println( b/a );//b/a=2;
System.out.println( b%a );//这里%是求余操作符,b/a=2.....0;所以结果是0;
System.out.println( c%b );//c/b=1...10;所以结果是10;
a++;//相当于a=a+1;
System.out.println( a );//结果为11;
a--;//相当于a=a-1;
System.out.println( a );//结果为10,因为上面a=11; }
}
*/ //------------------------------------------------------------------------------ /*
* 二 Java关系运算符
*
* Java关系运算符都有哪些?
* >, >=, <, <=, ==, !==
* 关于多重运算中的优先级问题,这里建议用括号括起来,避免脑子里计算上的错误;
*
*/
/*
public class Javase{
public static void main(String[] args){
int a = 10;
int b = 10; boolean c = (a==b);//boolean的值只有true(真)和false(假),所以这里是做一个判断,判断a是不是等于b,若判断为真,输出true,反之输出false System.out.println( a>b );//这里很明显a和b是相等的,所以这里结果会是false,后面的自己判断
System.out.println( a>=b );
System.out.println( a<b );
System.out.println( a<=b );
System.out.println( a==b );
System.out.println( a != b ); }
}
*/ //------------------------------------------------------------------------------ /*
* 三 Java逻辑运算符
* 这个跟大学课程里的门的体系一样(与非门,或非门等等)
* 判断符:
* & 位与 两边都是true,才是true
* | 位或 一边是true,结果才是true
* ! 位非 取反
* ^ 位异或 两边逻辑值不相等 才是true
*
* 逻辑比较:
* && 符号两边都为真才会为真,有一个错都是假
* || 符号两边只要有一个为真就为真
* !
* ^
*
* 举个简单的例子:
* (1=2 & 1=1)----->左边是假,右边是真,但是判断符是位与,有一个为假都是假,两个为真才是真,所有这个结果是假false
* (1=2 | 1=1)----->还是同一个,判断符是位或,有一个为真就是真,结果是真ture
*
*/ /*
public class Javase{
public static void main(String[] args){
System.out.println(5>3 & 5>4);
System.out.println(5>3 && 5>4);
System.out.println(3>5 & 6>7);//第二步仍然会运算
System.out.println(3>5 && 6>7);//一个为假就为假,第二步就不会运算
System.out.println(5>3 | 5>9);//仍然会运算
System.out.println(5>3 || 5>9); //一个为真就为真,所以后面不会再运算
System.out.println(5>11 | 5>10);
System.out.println(5>11 || 5>10); //后面要算
System.out.println(!false);
System.out.println(true ^ false);//true
System.out.println(false ^ true);//true
System.out.println(true ^ true);//false
System.out.println(false ^ false);//false
}
} */ //------------------------------------------------------------------------------ /*
* 四 赋值运算符
*
* 赋值运算符都有哪些:
* =(基本赋值运算符)
* += 加等于
* -= 减等于
* *= 乘等于
* /= 除等于
* %= 余等于
*
* 怎么用呢:
* 例如: i += 10; 就向当于i = i + 10;就是让i和10相加,然后再赋值给i;
*
*
* 说到这里,把之前留下的问题解决一下,就是i++;和++i;的区别,下面上例子.
*/ /*
public class Javase{
public static void main(String[] args){
int i = 10;
//i = i++;
//System.out.println( i );//输出结果为10;
i = ++ i;
System.out.println( i );//输出结果为11;
//这是为什么呢?
//首先,i = i ++;是先赋值后++,而i=10;所以结果是10;
//而i = ++i;是先++1,然后在赋值给i,所以结果为11;
}
}
*/ //下面直接说赋值运算符,下面上例子=========================================== /*
public class Operator_04{
public static void main (String [] args)
{
//基本赋值预算符,试一下用byte试试=127
int a = 10; //+=
a += 10;
System.out.println(a);
//-=
a -= 5;
System.out.println(a);
//*=
a *= 5;
System.out.println(a);
// /=
a /= 15;
System.out.println("a = " + a);
System.out.println( 10/15 );
// %=
a %= 2;
System.out.println(a);
//-----------------------------------
//内部自动类型转换
byte i = 10;
//两次运算;由于后面的1是一个整型;所以会自动转换成整型,结果也是整型;但是前面的i变量是指定的byte型,把一个整型赋给byte型肯定报错
//i = i + 1; //设个是一步运算;但是会预先进行数据类型转换,转换成本类的数据类型;所以会损失精度
i += 119;
System.out.println("hello");
System.out.println(i);
}
}
*/ //------------------------------------------------------------------------------ /*
* 五 字符串连接符
*
* 字符串连接符: +
* 说实话,把这个单独拿出来做一章说有些浪费,这个符的作用在代码和运行结果上看很容易明白,我就不扯没用的了,只说几个稍微值得注意的吧:
* 字符串连接符"+":即使数值加和运算符,也是字符串连接符;
* 他会进行自动数据类型转换(boolean不参与转换)
* 运算结果也是字符串类型
*
*/ /*
public class Operator_05{
public static void main (String [] args)
{
//字符串连接符
System.out.println("PI=" + 3.14); int a = 10;
int b = 12;
System.out.println("a+b = " + (a+b)); //a+b=22
System.out.println("a+b = " + a+b); //a+b=1012 从左往右,挨个计算,数据类型挨个转换
System.out.println(a + "+"+b+"=" +(a+b)); //10+12=22 括号提高性运行级别,先运算 }
}
*/ //------------------------------------------------------------------------------ /*
* 六 三元运算符
*
* 什么是三元运算符?
* 条件判别式 ? 真执行的语句 : 假执行的语句
* 上面就是三元运算符的写法,感觉没什么可说的,还是直接上代码吧
*/ public class Operator_06{
public static void main (String [] args)
{
boolean sex = false;
//10 //这个不是语句;单独的值,单独的
char c = (sex ? '男' : '女');
System.out.println(c);
boolean isSuccess = true;
System.out.println(isSuccess?'s':"失败");
}
}
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>杰我教育WWW.JAOVO.COM<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
JavaSE复习日记 : Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符的更多相关文章
-
JavaSE复习日记 : java包机制
这里是第一个文件,命名为JavaSE_01.java,我在这个文件里面声明了一个m1()方法,通过包机制,我将在另外一个文件夹里访问这个文件里的东西,确切的说是访问这个文件生成的一个class文件; ...
-
JavaSE复习_1 Java的基本格式和运算符
△.代表在当前目录.classpath能在任何路径下访问类文件. △单行注释可以嵌套,多行注释不能嵌套 △java中的标识符只能有数字,字母,$和_,其他的符号都是错误的,不合法的.其中数字不能是开头 ...
-
Effective Java 第三版——63. 注意字符串连接的性能
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...
-
Java学习笔记四:三目运算符与字符串连接符等
一 .三目运算符与自增自减 GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/OperPrac02.java 条件运算符由 ...
-
040_字符串连接符 041_条件运算符目 042_运算符优先级_逻辑与或优先问题 043_自动类型转化 044_强制类型转换 045_基本类型常见错误_溢出_L问题
040_字符串连接符 package test_package; /** * 字符串运算符 * @author * */public class TestOperator05 { public sta ...
-
JavaSE复习日记 : 继承关系和super关键字以及继承关系中方法的覆写
/* * 类的继承和super关键字 * * 软件开发的三大目的: * 可拓展性; * 可维护性; * 可重用性; * * 这里单说下可重用性这一项: * 为了代码复用,复用方式有: * 函数的调用复 ...
-
JavaSE复习日记 : 算是个小前言吧
/* * Java也学了好久了,抽个时间整理了一下课堂笔记,也有些是我刚开始学会犯的一些错误.在这里浅谈一下JavaSE的基础内容,对我来说也是一种不错的复习方式. * * 那好,对于初学者来说,学习 ...
-
JavaSE复习日记 : 方法的调用和方法的重载
/* * 方法的调用和方法重载 */ /* * 什么是方法? * 方法就是一个有名字的代码段; * 方法的调用: * 在方法里调用另外一个方法里面的东西就是方法调用; * 或者可以认为"另外 ...
-
JavaSE复习日记 : 抽象类
/* * 抽象类 * 抽象: * 面向对象的三大核心思想; * 封装: 封装,ppp是封装的一部分 * 继承; * 多态: 父类的引用指向子类的对象 * 引用: 是指一个引用型变量 * 有哪些变量? ...
随机推荐
-
基于synchronized 或 ReadWriteLock实现 简单缓存机制
package cn.xxx.xxx; import java.util.HashMap; import java.util.Map; import java.util.concurrent.lock ...
-
google jquery用不了啦,你准备好了吗
今天,相信很多网站开发人员都有这感觉,明明正常的页面却无法工作了,莫名其妙的错误,笔者也遇到这种错误,细查之下才发现google jquery用不了啦,通过firefox调试发现找不到jquery了, ...
-
css3、html5学习笔记
2016/12/14 ----认真看完绝对对你有帮助 HTML5针对移动端,移动端的浏览器主要是chrome,是webkit内核; app(applicatin):应用; native app:原生的 ...
-
Android实现Banner界面广告图片循环轮播(包括实现手动滑动循环)
前言:经常会看到有一些app的banner界面可以实现循环播放多个广告图片和手动滑动循环.本以为单纯的ViewPager就可以实现这些功能.但是蛋疼的事情来了,ViewPager并不支持循环翻页.所以 ...
-
iOS开发icon&;images Size
https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/IconMatrix ...
-
SVN删除同名文件夹
解 释一下: SVN 出现这个错误的原因是我删除了一个文件夹后又创建了一个同名文件夹. 在 svn server 端,好像是不能区分这两个文件夹,所以出现了错误. ...
-
AlertView + Block 的使用
AlertView的使用还是很频繁的,扁平化以后似乎也不是那么丑了,但是到现在为止官方还是在用Delegate来处理点击事件,很影响程序的可读性. 如果用Block那么就会一目了然.自己本来想写一个, ...
-
linux的学习系列 10---vi
Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功能. ...
-
SQL Server 结构分解
关系引擎和存储引擎是SQL Server 的两大组件,其中关系引擎也叫查询处理器,它包括查询优化器.命令解析器.查询执行器.存储引擎管理所有的数据及涉及的IO,它包括事务管理器和数据访问方法和缓冲区管 ...
-
SpringMVC 处理映射
一.Spring MVC控制器名称处理映射 以下示例展示如何利用Spring MVC 框架使用控制器名称处理程序映射. ControllerClassNameHandlerMapping类是基于约定的 ...