Par*_*ker 4 java arrays collections list arraylist
我有一个ArrayList,我们会说它最多可以是5号.我想将第一个元素分配给var1,第二个元素分配给var2,第三个元素分配给var3等.
但是,有时ArrayList的项目少于5个,在这种情况下,我不会为某些变量赋值.
所以我的问题是,有没有比这更好的方法来做到这一点:
if (myArrayList.size() > 0)
var1 = myArrayList.get(0);
if (myArrayList.size() > 1)
var2 = myArrayList.get(1);
if (myArrayList.size() > 2)
var3 = myArrayList.get(2);
if (myArrayList.size() > 3)
var4 = myArrayList.get(3);
if (myArrayList.size() > 4)
var5 = myArrayList.get(4);
Run Code Online (Sandbox Code Playgroud)
Voo*_*Voo 12
这个来源肯定是一个糟糕的代码设计.如果arraylist不包含该字段(稍后你使用它),你还要初始化变量是什么?一个更大的例子或者你正在尝试做什么在这里会有所帮助.通常只是使用
但我至少可以想到两种方法:
switch(myArrayList.size()) {
case 5:
var4 = myArrayList.get(4);
case 4:
var3 = myArrayList.get(3);
case 3:
var2 = myArrayList.get(2);
// and so on
}
Run Code Online (Sandbox Code Playgroud)
或者只是使用try/catch.
try {
var0 = myArrayList.get(0);
var1 = myArrayList.get(1);
}
catch(IndexOutOfBoundsException ex){
}
Run Code Online (Sandbox Code Playgroud)
但是大多数情况下,最好使用arraylist本身,并使用您用于变量的默认值来填充它.
| 归档时间: |
|
| 查看次数: |
8389 次 |
| 最近记录: |