如何将ArrayList转换为最终的String数组?

时间:2019-05-22 08:24:40

标签: java android

我需要将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
            }
        };

4 个答案:

答案 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,但仍然可以更改它的个别元素。

请参见here for example