2016-03-14 126 views
-2

有人能幫助我理解這個嵌套循環內部發生了什麼嗎?我一直在困擾着這個邏輯背後的邏輯Java邏輯,三角形

public class Old { 
    public static void main(String[] args) { 
     for (int i = 1; i <= 10; i++) { 
     for (int j = 1; j <= i; j++) { 
      System.out.print("*"); 
     } 
     System.out.println(); 
    } 
} 
} 
+2

運行它一步一步的調試下,看看自己。 –

回答

1

第一次循環運行10次。

第二個for循環運行i次,其中我每次第二個for循環經歷一個完整的循環時增加1。

第二個for循環必須在第一個循環數加1之前運行整個循環。由於它的限制是i,每次增加1,第二個for循環的循環必須遍歷內容在那個循環中比上一個循環多1次。

在第二個for循環期間,它打印星號*。請注意,printprintln不同之處在於println在打印任何指定內容後跳過一條線,而print不會使它跳到新的一行。

因此,每條新行上打印的星號數量增加1。其結果將是星號的10條線路,其中的最後一行有10

* 
** 
*** 
**** 
***** 
****** 
******* 
******** 
********* 
**********