算法题学到的一些小语言细节
1.要学会用++i;可以简化很多代码:i++;copyFromMe(i);可以写成:copyFromeMe(++i)
2.StringBuffer也跟列表一样有append函数;
3.if语句是分支不能进行循环,要写成while才能替代循环里面的判断
4.
这里的c在do循环里面定义,但是在while里面不能用,因为这个时候 的c是一个局部变量,括号结束就不能用了
5.
public class ForDemo { public static void main(String[] args) { int[][] arrayOfInts= {{32,87,3,589},{12,1076,2000,8},{622,127,955}}; int searchfor=12; int i=0; int j=0;//i,j虽然通常是循环里面的临时变量,在这个里面是全局的临时变量,特别是j ,是全局变量,
但是j 是内层循环要用到的变量,所以在之后的循环初始化的时候要把j初始化为0,但是i就不用 boolean foundit=false; search: for(;i<arrayOfInts.length;i++) { for(j=0;j<arrayOfInts[i].length;j++) { if(arrayOfInts[i][j]==searchfor) { foundit=true; break search; } } } if(foundit) { System.out.println("Found"+searchfor+" at"+i+","+j); }else { System.out.println(searchfor+"not in the array"); } }
哈希表:HashSet和HashMap
hashmap,Map接口对键值对进行映射。Map中不允许重复的键。HashSet实现了Set接口,它不允许集合中有重复的值
浙公网安备 33010602011771号