标签:
// 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‘:"失败"); } }
JavaSE复习日记 : Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符
标签:
原文地址:http://www.cnblogs.com/yizhimichong/p/4740844.html