1.简析Java中while循环与do/while循环的区别
while语法格式:
while(布尔表达式){
//语句
}
先判断布尔表达式,如果为true就会执行循环体中的语句,然后再判断布尔表达式,如果为true就执行循环体中的语句,一直到布尔表达式为false,然后循环结束。
通常用算术运算符(++ -- 累减)
do/while语法格式:
do{
//语句
}while(布尔表达式);
先执行一次循环体,然后在判断布尔表达式是不是true,如果是就继续执行循环体,在判断布尔表达式,直到为false就结束循环。
两者的区别:while是先判断在执行如果判断不成立,就不会执行;do/while是先执行在判断,不管判断是否成立都会执行一次
2.”==” 运算符和 equals 运算有何区别
" ==" 比较引用地址是否相同 ,当比较字符串比较值是否相同
" equals " 比较的是值是否相同
3.for循环(死循环,return跳出循环)
public String toString() {
Iterator<Entry<K,V>> i = entrySet().iterator();
if (! i.hasNext())
return "{}";
StringBuilder sb = new StringBuilder();
sb.append('{');
for (;;) {
Entry<K,V> e = i.next();
K key = e.getKey();
V value = e.getValue();
sb.append(key == this ? "(this Map)" : key);
sb.append('=');
sb.append(value == this ? "(this Map)" : value);
if (! i.hasNext())
return sb.append('}').toString();
sb.append(',').append(' ');
}
}
4.Set(排序)和TreeSet使用
Set<Integer> set = new HashSet<Integer>();
set.add(1);
set.add(5);
set.add(3);
for(Integer value:set){
System.out.println("value="+value);
}
结果是:
value=1
value=3
value=5
TreeSet treeSet = new TreeSet();
treeSet.add("ccc");
treeSet.add("aaa");
treeSet.add("ddd");
treeSet.add("bbb");
System.out.println(treeSet);
//默认按照字典排序,当然也可以自定义一个比较器Comparator,实现compare方法
结果是:[aaa, bbb, ccc, ddd]
5.continue的用法(跳出本次循环)
重点:break是跳出循环,continue是跳出本次循环
代码如下:
for(int i=0;i<5;i++){
if(i==1) continue;
System.out.println("print"+i);
}
结果是:
print0
print2
print3
print4