2016-03-01 20 views
0

我想知道是否可以處理另一個數組中的數組,我從來沒有聽說過類似的東西,我很好奇它是否可能,因爲我現在正在編寫一個小程序,我需要這樣的東西! 一個例子(也許這是可以解決的比在陣列中使用的陣列其他): 我有兩個字符串數組這樣的:數組中的數組

public String[] stringArray1 = { "0", "1", "2", "3" }, stringArray2 = { "0", "1", "2", "3" }; 

現在我需要是這樣的:

public /*type?*/[] allArrays = { stringArray1, stringArray2 }; 

因爲我需要使用for循環訪問它,並且我不想使用數千個if語句來訪問stringArrays(這只是我的真實程序中的一個示例,就像100個陣列):

for(int i = 0; i < numberOfArrays/*100*/; i+=2) 
test/*a rondom void*/(allArrays[i], allArrays[i+1]); 

在我PROGRAMM總有連接兩個數組,這就是爲什麼我叫一個與我和一個與我+ 1 ......所以現在這是我的測試看起來像:

public void test(/*type?*/ test1, /*type?*/ test2) 
{ 
//now i need to use test1 & test2 as string to f.e. like this: 
if(test1[2].contains("1")) 
//do something 
} 
+3

'字符串[] []',二維陣列,實際上是含有數組的數組。 – SomeJavaGuy

+2

你的意思是'String [] []',即2D數組嗎? – Thomas

回答

2
String[][] arrays = new String[][] { stringarray1, stringarray2, stringarray3 }; 
+1

如果你想讓你的代碼變得動態嘗試使用ArrayList ArrayList > list1 = new ArrayList >(); ArrayList listoflists = new ArrayList (); nodes.add(listoflists); – SmashCode

+0

正是我期待的!謝謝 :) – SyxDuLappen

2

這是一個duplicate。你需要一個數組數組。

public String[][] allArrays = { stringArray1, stringArray2 }; 
+3

你承認這是一個重複的,那麼爲什麼回答,而不是隻標記爲dup? – Idos

+0

@Idos我認爲我沒有足夠的聲望來標記它是重複的。 – m1o2

+0

flag as duplicate :)(我沒有downvote,只是爲了清楚) – Idos