2018-08-23

三元运算符

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里生效。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容