【问题标题】:How to get String[] from ArrayList<String[]>, I want to actually get String at index 0 from ArrayList<String[]>?如何从 ArrayList<String[]> 获取 String[],我想实际从 ArrayList<String[]> 获取索引 0 处的字符串?
【发布时间】:2017-07-08 13:30:19
【问题描述】:

我有一个班级

public class DataRatesString {

private String[] ab1 = {"Auto moto sdhv davjdn adadk", "Rs. 355"} ;
    private String[] ab2 = {"sjg atoiu ", "Rs. 200"} ;
    private String[] ab3 = {"go to UTOP atup auto", "Rs. 3279"} ;
    private String[] ab4 = {"Hid to putho", "Rs. 2424"} ;
    private String[] abo5 = {"pithoo to bittu", "Rs. 8457"} ;

private ArrayList<String[]> abCollection = new ArrayList<>();

 public void setAbCollection() {
        abCollection.add(ab1);
        abCollection.add(ab2);
        abCollection.add(ab3);
        abCollection.add(ab4);
        abCollection.add(ab5);
    }

    public ArrayList<String[]> getAbCollection(){
        return abCollection;
    }

}

我有另一个班级,我从中调用列表

DataRatesString dataRatesString = new DataRatesString();
dataRatesString.setAbCollection();

        ArrayList<String[]> ratesarray = dataRatesString.getAbCollection();

现在我想获取 Arraylist String[] 位置 0 处的所有字符串

我在同一个类中创建了一个方法,但由于我是 java 新手,所以我无法确切地弄清楚如何去做。

这是我尝试制作的方法

private List<String> getRatesItemNamelist(){
String[] arraylist;
        ArrayList<String> list = new ArrayList<>();

        arraylist = new String[ratesarray.size()];

        for (int i = 0; i < ratesarray.size(); i++) {
        arraylist = ratesarray.get(i);

        }

            list.add(0, arraylist[arraylist.length]);

        return list;
    }

这不起作用。

【问题讨论】:

    标签: java android string arraylist


    【解决方案1】:

    试试这个:

    private List<String> getRatesItemNamelist(){
        List<String> list = new ArrayList<>();
        for (String[] rates : ratesarray) {
            list.add(rates[0]);
        }
        return list;
    }
    

    在 for 循环中,rates[0] 将从String[] 数组中为ratesarray ArrayList 中的每个元素获取第一个String

    所以getRatesItemNamelist() 函数将从 ArrayList ratesarray 中返回索引为 0 的字符串列表。

    【讨论】:

      【解决方案2】:

      如果我理解正确,您希望所有 arraylist 数据都位于位置 0。但我认为您无法实现。即使您希望您必须在多个数组列表中添加字符串,并且每个字符串分别添加在 0 位置。 为什么不尝试像这样让代码更简单

      List<String> data =  new ArrayList();
      data.add("demo1");
      data.add("demo2");
      .......
      
      Fetching data at 0 position, you could do this
      
      data.get(0);
      
      Fetch all data, you could use for each loop
      
      for(String s: data){
         //  here is you each position's data as string
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-08-23
        • 1970-01-01
        • 2013-05-27
        • 2015-10-16
        • 1970-01-01
        • 1970-01-01
        • 2013-10-05
        • 2014-01-02
        相关资源
        最近更新 更多