我需要将ArrayList转换为声明为final的String数组,
我最终得到了这个
//new array
String[] arrTextRow=new String[customListTxt.size()];
customListTxt.toArray(arrTextRow);
//new final array
final String[] arrTextRow2=arrTextRow;
它正在工作,但是只是想知道是否有更优雅的方法来实现这一目标,例如:
final String[] arrTextRow =new String[]{
for(String zz : customListTxt){
//dosomethinghere
}
};
答案 0 :(得分:1)
我更喜欢一种衬纸:
v_date & "*"
新的String [0]并不那么昂贵,但是您始终可以将其设为常量。
答案 1 :(得分:0)
您也可以将第一个数组arrTextRow
声明为final。
//Convert to string array
final String[] arrTextRow = customListTxt.toArray(new String[customListTxt.size()]);
答案 2 :(得分:0)
您可以使用list.toArray()
final String[] array = customListTxt.toArray(new String[customListTxt.size()]);
答案 3 :(得分:0)
我认为没有什么比<div class="parent_div">
<div class="child_div">
<div class="item item1"></div>
<div class="item item2"></div>
<div class="item item3"></div>
<div class="item item4"></div>
</div>
</div>
更优雅的了。另外,您可以将toArray()
定义为arrTextRow
。
final
重点是,final String[] arrTextRow = new String[customListTxt.size()];
不会使数组元素不可变,但是数组引用本身,即在将数组定义为final之后,您不能更改final
,但仍然可以更改它的个别元素。