三元运算符
int i = 2;
System.out.println(i<3?i*10:i*20)
如果i<3为真,执行i*10,如果为假,执行i*20
格式就是“判断式?表达式1:表达式2”
数字与字符串的连接
数字在前,字符串在后,那么数字先进行运算,再与字符串拼接
字符串在前,数字在后,直接拼接,数字部分不进行运算
public class test1{
public static void main(String[] args){
int x = 0, y = 1, z = 2;
System.out.println(x+y+z+"hello");
System.out.println("hello"+x+y+z);
}
}
image.png
类型转换,默认是向上转换,以免丢失精度,比如int+long,结果类型就是long。也允许向下转换,必须标明,不建议向下转换,你都不知道会怎么给你丢失
public class test1{
public static void main(String[] args){
int x = 1;
long y = 20000;
int z = x+y ;
System.out.println(z);
}
}
这时编译提示你可能精度丢失
可以这么改
public class test1{
public static void main(String[] args){
int x = 1;
long y = 20000000;
int z = (int)(x+y);
System.out.println(z);
}
}
break,判断条件为true时,中断,退出循环
continue,判断条件为true时,执行循环体内后面的语句,否则继续回到开始位置循环,
public class test1{
public static void main(String[] args){
int i = 0;
out:
while( i < 101){
System.out.println(i);
if(i==47){
break out;
}
i++;
}
}
}
或者使用return
public class test1{
public static void main(String[] args){
int i = 0;
out:
while( i < 101){
System.out.println(i);
if(i==47){
return;
}
i++;
}
}
}
嵌套循环需要使用到标签,不然break只是中断了内部循环,无法中断外部循环
switch的选择因子必须是整数(int,char这样的),浮点数和字符串不会在switch里生效。
网友评论