19.10.8
//1.如果出现浮点数使用==判断是否相等是不合理的
double x = 12.0;
Math.abs(x-12.0) < 0.000001);
//2.
判断值类型变量是否相等可以使用==,但是引用类型是否相等,
使用==表示引用是否为同一个对象,例如两个String对象,他们的值
虽然是一样的,但是代表不同的对象,如果使用==,会返回false,
因此,要判断引用值类型是否相同,必须使用equals()方法,s1.equals(s2)。
使用equals方法避免出现NullPointerException,即s1不能为null
//3.
switch(表达式),表达式的结果必须是整型、字符串、枚举类型,
同时,不应该忘记写break,还可以写上default
Java13开始升级了,不在需要break,同时可以使用yield,注意辨识。
//4.
do{
语句;
}while(表达式);这里有个分号记住了
//5.
for(int i = 0;;)也就是说i尽量定义在for循环里面,这样就无法外界访问i变量了
//6.for each的使用
int[] ns = {1,4,9,16,25};
for (int n : ns){
System.out.println(n);
}
和for循环相比,for each循环的变量n不再是计数器,
而是直接对应到数组的每个元素。for each循环的写法也更简洁。
但是,for each循环无法指定遍历顺序,也无法获取数组的索引。
除了数组外,for each循环能够遍历所有“可迭代”的数据类型,
包括后面会介绍的List、Map等
//7.break and continue
break语句可以跳出当前循环;
break语句通常配合if,在满足条件时提前结束整个循环;
break语句总是跳出最近的一层循环;
continue语句可以提前结束本次循环;
continue语句通常配合if,在满足条件时提前结束本次循环。
//8.打印数组
直接使用打印数组,得到的是数组在JVM中的引用地址
可以使用Arrays.toString(数组名)打印出数组
打印二维数组使用Arrays.deepToString(数组名)
//9.Arrays.sort()自带排序,从小到大
数组排序实际上是修改了数组本身的引用,原来的内存部分没有改变。
作者:睿晞
身处这个阶段的时候,一定要好好珍惜,这是我们唯一能做的,求学,钻研,为人,处事,交友……无一不是如此。
劝君莫惜金缕衣,劝君惜取少年时。花开堪折直须折,莫待无花空折枝。
曾有一个业界大牛说过这样一段话,送给大家:
“华人在计算机视觉领域的研究水平越来越高,这是非常振奋人心的事。我们中国错过了工业革命,错过了电气革命,信息革命也只是跟随状态。但人工智能的革命,我们跟世界上的领先国家是并肩往前跑的。能身处这个时代浪潮之中,做一番伟大的事业,经常激动的夜不能寐。”
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.