2015-11-05 24 views
0

我無法理解String tabell = "";爲什麼? ""空字符串語法的解釋「」

,我無法瞭解以下內容:tabell = tabell + i + " " + i*i + "

文件Tab.java

public class Tab { 
public static void main (String[] arg) { 
    String tabell = ""; 
    for (int i=1; i<=12; i++) 
    tabell = tabell + i + " " + i*i + " " + i*i*i + " "; 
    JOptionPane.showMessageDialog(null, tabell); 
    } 
} 
+0

這是什麼劑量的意思?String tabell =「」;如何工作?tabell = tabell + i +「」+ i * i +「」+ i * i * i +「」;我知道如何爲()工作,但... –

+0

你正在創建一個'字符串'連接一個'字符串與數字'int' ... – brso05

+0

意思是你用空字符串初始化變量! – Maraboc

回答

1

String tabell = "";需要,甚至創建一個String對象。 (否則tabellnull

i*i相同i^2i*i*i = i^3

tabell = tabell + i + " " + i*i + " " + i*i*i + " ";

本質上,它追加這對已經存在的Stringtabell

(i = 1, first for iteration) 
1 1 1 
(i = 2, second for iteration) 
2 4 8 
(i = 3, third for iteration) 
3 9 27 
etc... 

所以經過for循環的3次迭代後,你的String w生病是:

1 1 1 2 4 8 3 9 27

最後,循環後MessageDialog顯示當前tabell內容有:

JOptionPane.showMessageDialog(null, tabell); 
+0

我得到了這個,非常感謝你 –

+0

@MohammadAZare np,很高興能夠提供幫助:) – showp1984

0

這是怎麼了你的方法將被讀:

public class Tab { 
    public static void main (String[] arg) { 
     String tabell = "";//A string object 

     for (int i=1; i<=12; i++)//Call the statement below 12 times. 
      tabell = tabell + i + " " + i*i + " " + i*i*i + " "; 
      //concate the tabell string with what comes after the '=' 

     JOptionPane.showMessageDialog(null, tabell);//Display the tabell string in an option pane 
    } 
} 

我想你遇到麻煩的線是:tabell = tabell + i + " " + i*i + " " + i*i*i + " ";

您在這裏做的是將數字i多次添加到您的字符串對象中,無論是在for循環還是代碼行本身。