是否可以在同一行中聲明2個數組列表? 如:聲明多個數組列表
List<String> mm= new ArrayList<String>();
List<String> kk= new ArrayList<String>();
是否然後可以做這樣的事情:
List<String> mm,kk= new ArrayList<String>();
很顯然,我得到一個編譯錯誤,當我做以上,並想知道一個人如何能在申報2所列出同一條線。
是否可以在同一行中聲明2個數組列表? 如:聲明多個數組列表
List<String> mm= new ArrayList<String>();
List<String> kk= new ArrayList<String>();
是否然後可以做這樣的事情:
List<String> mm,kk= new ArrayList<String>();
很顯然,我得到一個編譯錯誤,當我做以上,並想知道一個人如何能在申報2所列出同一條線。
簡而言之:是的,你可以在同一個表達式中使用2個變量。 List<String> mm,kk;
正在聲明兩個列表。
請注意,操作kk = new ArrayList<String>();
是不是聲明,它是assigment。
您可以在同一行聲明它們,但你不能對它們進行初始化。 所以
List<String> mm,kk;
是可能的,但那麼你仍然要初始化它們
mm = new ArrayList<String>();
kk = new ArrayList<String>();
@fge寫什麼是正確的方式。但是要確保你沒有像一個單一的線對它們進行初始化:
mm = kk = new ArrayList<String>();
,因爲這會導致兩個指向同一個ArrayList對象名單,並會弄亂兩個列表。
這種單線初始化可以爲原始數據類型完成,但不能用於參考數據類型。
你的例子編譯得很好,但它只初始化'kk'。 – 2011-12-25 21:11:21
如果我是一個測試人員或開發人員在查看你的代碼來定義kk的位置,我會發現你的第一個例子更清晰,更容易遵循。 – phatfingers 2011-12-25 21:21:33