JavaSE-运算符和流程控制
温馨提示:
本文最后更新于 2024年07月21日,已超过 271 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
- break和continue的区别?
- break是直接终止这个语句块。
- continue是跳过一次这个循环语句块。
- do循环和while循环有什么区别?
- do循环是无论判断条件是否成立都是会执行一次循环体里面的语句,也就是先执行后判断,而while循环是先判断条件是否成立,如果成立才会执行循环体,不成立则不会执行循环体。
- “&”和“&&”的区别?
- &是如果判断语句里有两个判断中间用的&,则这两个都是要为真的时候才是最终结果为真,而如果遇到前面那个是假的时候,它还是会去比较后面的是真还是假,而&&是如果前面那个为假了,则后面的那个就不会去比较。
- switch(表达式)中表达式的返回值可以是哪些类型?
- byte,short,char,int,
- 在jdk5之后可以返回枚举
- 在jdk7之后可以返回String
如何跳出多重循环体?
- 用break加循环体标签
比如:
public class Demo{ public static void main(String[] args){ outer:for(int i=1;i<5;i++){ System.out.print("第一层"+i+"\t"); for (int j = 1; j < 5; j++) { System.out.print("第二层"+j+"\t"); if(j==3){ break outer; } } } } }
思考题:
short s = 3;
s=s+2; ①
s+=2; ②
①和②有什么区别?答:①会编译时报错,而②是正常运算的,应为①这样2是int型,他不会自动转换为short型,所以会报错,可能会丢失精度, 而②会自动将int型的2强制类型转换为short型,所以不会报错。
boolean b1 = false; //区分==和=的区别。 if(b1=true){ System.out.println("结果为真"); }else{ System.out.println("结果为假"); }
答:输出台会显示结果为真,‘=’是赋值运算符,‘==’是比较运算符,声明是b1是false, 而在判断的时候使用了赋值运算符,把b1的值改成了true,所以会执行条件为真的语句块。
- 以下代码会在控制台输出什么?
int i = 1; i *= 0.1; System.out.println(i); // ? i++; System.out.println(i); // ?
答:输出台会显示 0 1 因为i是int型,执行第一个i *= 0.1;时,0.1 会向下取整自动转换为int型的0,所以i=i*0=0; 而后面执行i++之后就自增1,所以第二个会输出1
正文到此结束
- 本文标签: Java
- 本文链接: https://fxyh.top/article/11
- 版权声明: 本文由fxyh原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权