至今基础班已经开班两周,总结下个人认为几个比较容易搞混的几个点。
1.==和euqals()的区别:
首先,==是一个运算符号,而equals是一个方法。
== 如果是比较基本数据类型,比较的是两个数值是否相等;如果比较引用数据类型,比较的是对象的地址值是否相等。
equals()方法是用来比较两个对象的内容是否相等。
注意点:equals()方法不能用于基本数据类型的变量。如果没有对equals()方法进行重写,则比较的是引用类型的变量所指向的对象地址。
2.break和continue区别:
break和continue都用于循环语句。
break只能用于switch和循环语句中。用于循环语句中可完全结束一个循环,跳出循环体执行后面的语句。
continue用于跳过本次循环,执行下次循环。
3.break和return区别:
break 用于完全结束一个循环。
return 用于完全结束一个函数(方法)。
4.break位于内层,想让他作用于外层,结束外层for循环:
outer: for (int i = 0; i <3; i++) { //外层循环
inner: for(int j=0;j<6;j++) { //外层循环
if(j==4) {
break outer;
}
System.out.println(i+" " +j);
}
}
在for循环前面加上标记,以此来区别是内循环还是外循环
(如outer: for (int i = 0; i <3; i++))。
要结束循环,用break语句后面加上内外层循环的标记(如break outer;)。 |
|