判断语句的学习


类型转换:
从低精度转换到高精度,叫自动类型转换,也叫隐式转换,也叫放大转换。没有损失,系统自动进行转换,无须写代码;
从高精度转换到低精度,叫强制转换,也叫缩小转换。可能有损失,系统不能自动进行,需要程序员手写强制转换代码;

运算符:
int a = 1;
System.out.println(a++ + ++a);结果是?为什么;
结果是:4;因为a先加上一个2,++a是先自加,然后加上以后是3,最后就是a++自加一个1;
a++ 【先运算(结果1),后赋值(a=1+1)】+【++a 先赋值(a=2+1),后运算(结果1+4)】。

除字符串相加功能外,还能把非字符串转换成字符串:
例如:System.out.println("5+5="+5+5);//打印结果是?
结果是:5+5=55;
注意: 字符串和其他类型可以用+进行拼接它是将其他非字符串类型转成字符串,然后拼接;

逻辑运算符:
&:与运算,范例:6 & 3 = 2,&的应用,因为&运算只有两边结果都是1是结果才是1,否则为0,所以我们可以对于这个特点来获取某一段二进制位;
|:或运算:范例:6 | 3 = 7,在二进制里,6和3对比,6是0110,3是0011,|或是,有一就是1得出:7;
^:异或运算:范例:6 ^ 3 = 5,异或的应用,一个数异或另一的个数两次,结果还是这个数,此应用可以用来加密解密,而另一个数就是密钥;
比如6^3得出的是5,而3就是秘钥,吧5^3得出的又是原来的6;
~:反码:范例:~6 = -7,反码的意思就是二进制通通去反,包括符号位也同样取反;

三元运算符:
一定会返回一个值;
由 ? : 符号表示的,具体的含义其实就和if-else结构的含义差不多,这种运算符会将某个条件作两种处理,如果满足条件的话就执行第一个结果,如果不满足的话就执行另外一个结果,使用格式:
(条件表达式)?表达式1:表达式2;
运算规则:
a) 判断条件表达式,结果为一个布尔值。
b) true,运算结果为表达式1
c) false,运算结果为表达式2
例如:
Int A,B,C;
A=2;
B=3;
C=A>B ? 100 :200;
这条语句的意思是,如果A>B的话,就将100赋给C,否则就将200赋给C;
程序流程控制:
顺序结构:
判断结构:
选择结构:
循环结构:

if else语句要注意的问题:
区间判断只能使用if来完成;
if else语
句,可以调换位子,但是可能会出现逻辑错误问题。因为,判断对比要以最小的区间开始判断,因为判断较大的区间,可能覆盖一些小的区间;
比如:如果考试90分,以60分开始判断,那么60分以上都算几个,没有优良中的判断了,这样就会犯逻辑错误问题;

switch语句:
1.适合等值判断;
2.不能处理Boolean,浮点,long,只能处理枚举,byte,short,char ,int,String,枚举等;
3.break表示退出switch判断,如果不写,会不判断下个case直接运行下个case后的代码;

原文地址:https://www.cnblogs.com/yuhudashen/p/7885494.html