当前位置: 首页 > 面试题库 >

如何存储所有ArrayList>将值放入ArrayList?

宗政颖逸
2023-03-14
问题内容

我有问题来存储的所有值ArrayList<ArrayList<String>>ArrayList<String>。这里stylistIDArraydurationArray是数组的数组。我想将它们的所有值分别存储在stylistId和中duration。的stylistidduration是字符串的数组。

这是我的尝试,但仅存储每个数组的最后一项。

ArrayList<ArrayList<String>> stylistIDArray;
ArrayList<ArrayList<String>> durationArray;
stylistIDArray = differentGenderServicesAdapter.getSelectedStylistIdArray();                
durationArray = differentGenderServicesAdapter.getSelectedDurArray();

ArrayList<String>stylistId = new ArrayList<>();
ArrayList<String>duration = new ArrayList<>();

for(int i=0; i<stylistIDArray.size(); i++) {
    stylistId = stylistIDArray.get(i);
    duration = durationArray.get(i);
}

注意:我已经尝试过了,但是对我不起作用。


问题答案:

为了通用,首先让它成为对象列表

List<List<Object>> listOfList;

您想要放入对象列表

List<Object> result;

注意结果列表将包含每个对象,包含的是输入列表。 这种转换将丢失有关哪个对象位于哪个列表中的信息。

您必须遍历listOfList。在每个循环中,您都会获得一个对象列表(List<Object> listOfObject)。然后遍历这些列表以获得每个对象(Object o)。然后将这些对象添加到结果列表(result.add(o))。

for(List<Object> listOfObject : listOfList) {
    for(Object o : listOfObject) {
        result.add(o);
    }
}

就您而言,问题是您使用情感代替add()。在每个循环中,它将用新值替换该值。因此,最后只存储了每个列表的最后一项。

stylistId=stylistIDArray.get(i); //This replace the existing stylistId

而是尝试类似

ArrayList<ArrayList<String>> stylistIDArray;
ArrayList<ArrayList<String>> durationArray;
stylistIDArray = differentGenderServicesAdapter.getSelectedStylistIdArray();
durationArray = differentGenderServicesAdapter.getSelectedDurArray();

ArrayList<String> stylistId = new ArrayList<>();
ArrayList<String> duration = new ArrayList<>();

for(ArrayList<String> l : stylistIDArray) {
    for(String s : l) {
        stylistId.add(s);
    }
}
for(ArrayList<String> l : durationArray ) {
    for(String s : l) {
        duration.add(s);
    }
}


 类似资料:
  • 在…方面 在我的代码中,我试图放入一个我之前生成的随机数,但当applet启动时,当我按下按钮时,它会给我一个错误,我想把代码放入所有的按钮,因为我不想要重复的数字,我想要每个按钮随机生成的数字。我希望你能帮助我。 我得到的错误是线程“AWT-EventQueue-1”java.lang.IndexOutOfBoundsException:index:0,size:0中的异常

  • 问题内容: 在SQL Server 2008上,如何将存储过程放在数据库的“存储过程”文件夹中? 当我这样声明时: 它去: 如何告诉服务器,并将其存储在: 编辑: 如果我这样声明: 它抱怨: 如果我使用“ USE”关键字,它会抱怨: 也许问题是我使用的是MS Management Studio,并且直接连接到服务器,而不是任何特定的数据库? 问题答案: 尝试以下

  • 问题内容: 我必须通过Volley Framework提出要求。这是带有JSONObject的POST请求。 我必须传递一个字符串和一个JSONArray ..但是我怎么能呢? 我从这个开始: 如果我尝试使用浏览器,则必须进行以下设置: 问题答案: 您需要先制作一个JSON数组,然后将其存储

  • 问题内容: 如何将arrayList存储到Java中的数组中? 问题答案: 那取决于你想要什么: 现在,如果要将列表存储在数组中,则可以执行以下操作之一: 但是,如果要将列表 项 放在数组中,请执行以下一项操作: 参考:

  • 问题内容: 我已经看过所有类似的线程,阅读了文档,并尝试了许多组合来将空值存储在db中,并且每次都失败。 我正在使用MySQL。 我定义了一个字段。我从csv文件填充db,并且某些单元格没有值。Django文档说: 由于我正在与我一起工作,因此我希望将一个空字符串(csv中的一个空单元格)存储在db中。因此,我(认为)必须添加到该字段中。实际上,我已经尝试了更多: 每次我向数据库插入一个空字符串时