逗號操做符 java
逗號操做符在java中特殊之處在於兩個地方: this
1. 定義同種類型的變量時能夠這樣寫: spa
int i=10,j=20;//只有同種變量才行2. 在for循環中的初始化條件和變化的步驟中對於同種類型的能夠鏈接:
for(int i=1,j=2;i<=3&&j<=6;i++,j+=2){//注意必須是同種類型,能夠用逗號鏈接任意多個,只要是同類型的 System.out.println(i+" "+j); }
foreach的Array和Collection的遍歷方式 code
對於Array和Collection類型,能夠經過foreach方式遍歷: it
List<Integer> list = new ArrayList<Integer>(); for(int i=0;i<10;i++){ list.add(i); } for(int temp:list){//foreach的方式 System.out.println(temp); }
java中的相似goto的方式 io
java中有label,形式爲「label1:」。 for循環
label應該出如今循環前面,而且label和循環之間沒有任何代碼,不然會編譯出錯。 編譯
label1://後面和循環之間不能有任何代碼,不然出錯 for(;;){ for(int i=1;i<100;i++){ if(i%10==0){ break label1;//當能整除10的時候跳出外層循環 } } }
循環應該是嵌套的,或者內層是個switch,這樣纔有意義。 class
label1: for(int a=0;a<11;a++){ switch(a){ case 5: System.out.println(5); break label1;//由於到這一步時就會跳出for循環而不單單跳出break,因此只會打出一個5 case 10: System.out.println(10); break; } }
continue label 跳到一個label處,而後接着執行label後面的循環。 變量
break label跳到label後面的循環外面,終止label後的循環的執行。
java中的switch
java中的switch後面的變量應該是整型,即int或char,對於非整型能夠用enum來實現,enum能夠與switch完美配合。
switch特殊的default:
int a=7; switch(a){ default: System.out.println("not 6 or 10"); case 6: System.out.println(6); break; case 10: System.out.println(10); break; }
上面的代碼打出"not 6 or 10"和"6",default是沒有匹配時默認執行的,若是default放在上面則應加上break,不然直到第一個break爲止。
上面的代碼若是a改爲6,則default不會執行,只有匹配不到時纔會執行。
enum與switch一塊兒使用的例子:
enum PEOPLE{ MALE("male"),FEMALE("female"); private String str; private PEOPLE(String str){ this.str = str; } public String toString(){//重寫父類的方法,調用System.out.println(enum)時會調用 return "_"+str; } } switch(PEOPLE.MALE){ case MALE: System.out.println(PEOPLE.MALE);//_male break; case FEMALE: System.out.println(PEOPLE.FEMALE); break; default: System.out.println("terrible"); }