Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么合并多个ArrayList时会出现重复?_Java_Arraylist_Duplicates - Fatal编程技术网

Java 为什么合并多个ArrayList时会出现重复?

Java 为什么合并多个ArrayList时会出现重复?,java,arraylist,duplicates,Java,Arraylist,Duplicates,为什么我的阵列列表中出现重复条目 allStepsJSONStringArray包含JSON格式的单个字符串数组 我循环并将每个JSON字符串传递给一个函数,该函数将其写入一个临时内部文件 我看了文件 然后将其传递给getStepsArray(),它将JSON字符串分解,并将每个条目放入string[] 要添加到主阵列列表的循环-allStepsArray for (int i = 0; i < allStepsJSONStringArray.size(); i++) { wr

为什么我的
阵列列表中出现重复条目

  • allStepsJSONStringArray包含JSON格式的单个字符串数组
  • 我循环并将每个JSON字符串传递给一个函数,该函数将其写入一个临时内部文件
  • 我看了文件
  • 然后将其传递给
    getStepsArray()
    ,它将JSON字符串分解,并将每个条目放入
    string[]
要添加到主阵列列表的循环-allStepsArray

for (int i = 0; i < allStepsJSONStringArray.size(); i++) {
    writer.writeToInternal(allStepsJSONStringArray.get(i));
    reader.readFromInternal(writer.filename); 
    stepsArray = reader.getStepsArray();
    for (int s = 0; s < stepsArray.size(); s++) {
        allStepsArray.add(stepsArray.get(s));
    }
}
public ArrayList<String[]> getStepsArray() {
    try {
        JSONObject jObject = new JSONObject(jsonString);
        JSONArray jArray = jObject.getJSONArray("steps");
        String stepOrder = null;
        String stepName = null;
        String stepType = null;
        String stepId = null;
        String checklistId = null;
        String checklistName = null;

        for (int i = 0; i < jArray.length(); i++) {
            stepOrder = jArray.getJSONObject(i).getString("order");
            stepName = jArray.getJSONObject(i).getString("name");
            stepType = jArray.getJSONObject(i).getString("type");
            stepId = jArray.getJSONObject(i).getString("id");
            checklistId = jObject.getString("checklistId");
            checklistName = jObject.getString("checklistName");
            stepsArray.add(new String[] {stepOrder, stepName, stepType, stepId, checklistName, checklistId});
        }


    } catch (Exception e) {
        e.printStackTrace();
    }
    return stepsArray;
}
for(int i=0;i
getStepsArray()

public ArrayList getStepsArray(){
试一试{
JSONObject jObject=新的JSONObject(jsonString);
JSONArray jArray=jObject.getJSONArray(“步骤”);
字符串stepOrder=null;
字符串stepName=null;
字符串stepType=null;
字符串stepId=null;
字符串checklistId=null;
字符串checklistName=null;
for(int i=0;i
逐字逐句:


因为您似乎从未重置
stepsArray
。第二次向其中添加元素时,前面的元素仍将存在,并将再次添加到
allStepsArray

因为您似乎从未重置
stepsArray
。第二次向其中添加元素时,前面的元素仍将存在,并将再次添加到
allStepsArray
。@SotiriosDelimanolis您是对的!如果你想得到一些分数,请创建一个答案,以便我可以接受@只要你解决了你的问题,诺玛就不用担心。