2012-03-31 20 views
-1

我想引用一個名稱在System.out.print()方法中有一個數字的變量。是否可以引用一系列變量?

public class Loopname { 
    public static void main (String [] args) { 
    int num = 1; 
    String file1 = "Hello"; 
    System.out.print("file" + num); 
    } 
} 

當這段代碼運行時,我得到「file1」作爲輸出。這是完全可以理解的,但我想檢索它的價值。我這樣做是因爲我想調用一系列這些文件,而無需在打印方法中單獨調用它們。

概念代碼:

public class Loopname { 
    public static void main (String [] args) { 
    String file1 = "Hello"; 
    String file2 = "Hola"; 
    String file3 = "Bonjour"; 

    for (int i=1; i<=3;i++) { 
     System.out.println("file" + i); 
    } 
    } 
} 

我想用戶看到:

Hello 
Hola 
Bonjour 

我願意接受任何建議和更簡單版本的代碼。

+3

這不是「Java的方式」,所以這在大多數情況下不起作用。當你獲得更多的編程知識時,你會發現變量名稱並不像它們看起來那麼重要,它們幾乎不存在於運行代碼中。 – 2012-03-31 19:19:31

+0

你想實現什麼?如果你創建一個類的變量成員,你可以使用該類的反射來按名稱訪問它們。 – nansen 2012-03-31 19:22:48

回答

3

使用數組:

String files[] = new String[]{"Hello", "Hola", "Bonjour"}; 

for (String file : files) { 
    System.out.println(file); 
} 
+0

是否可以這樣做:String files [] = new String [] {「Hello」,「Hola」,「Bonjour」};使用2維數組?例如:String files [] [] = new String [] [] {「Hello」} {「Bonjour」}; – user1299661 2012-03-31 20:21:30

+0

@ user1299661:好的,你*可以*使用2D數組。但是,我不確定你要去哪裏...... – NPE 2012-03-31 20:36:58

0

不,你不能這樣做。你需要將它們放入某種數組中並循環。

+1

a)你真的*可以*做到這一點,b)你沒有提供你的要求參考,c)你沒有提供OP的工作解決方案 – vaxquis 2014-07-20 11:09:56

相關問題