閱讀73 返回首頁    go 阿裏雲 go 技術社區[雲棲]


要知其然還要知其所以然printChar

雖然過渡與的追求細節不是好事,

但是現實社會逼迫我們不得不兼顧周全。

所以什麼都是最好不僅要知其然還要知其所以然!



public class printChar {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int n = 0;
		for(foo('A'); foo('B')&&n<2; foo('C')){
			n++;
			foo('D');
		}
	}
	public static boolean foo( char ar ){
		System.out.println( ar + "\b" );
		return true;
	}
//*******************************************************************************	
//	1.其實foo('A');就是初始化條件,隻會執行一次,所以第一個打印的肯定是A
//	2.因為i=0;循環條件是i<2 (由此可知循環i等於2的時候就會停止循環,)所有0<2滿足條件,
//	接著會輸出B,然後執行i++;i就變成1了,在輸出D
//	,在最後輸出C,
//	一次循環後的結果是:ABDC
//	3.第二次循環的開始是foo('A');是初始條件所以不會執行,直接從foo('B')開始,
//	輸出B,然後i為1,且小於2,此時循環體內再次執行i++;i的值為2了,再次輸出D,最後輸出C
//	第二次循環輸出:BDC
//	4.然後循環再次執行for(foo('A');foo('B')&&(i<2);foo('C'))
//	直接輸出B,i的值在第二輪循環後的值變成了2,2<2不成立,終止循環,輸出B
//
//	最後答案為:ABDCBDCB
//*******************************************************************************

}


源碼下載




最後更新:2017-04-03 12:53:57

  上一篇:go 最大公約數及最小公倍數是個什麼東西
  下一篇:go 知道ip 查服務器對應的mac