标签: arraylist

通过ArrayList反向迭代会产生IndexOutOfBoundsException

当我反复遍历ArrayList时,我得到一个IndexOutOfBoundsException.我尝试进行前向迭代,没有问题.我希望并知道列表中有五个元素.代码如下:

Collection rtns = absRtnMap.values();
List list = new ArrayList(rtns);
Collections.sort(list);

for(int j=list.size();j>0;j=j-1){
  System.out.println(list.get(j));
}
Run Code Online (Sandbox Code Playgroud)

前向迭代 - 工作正常,但对我没用:

for(int j=0;j<list.size();j++){
    System.out.println(list.isEmpty());
    System.out.println(list.get(j));
} // this worked fine
Run Code Online (Sandbox Code Playgroud)

错误:

Exception in thread "Timer-0" java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
    at java.util.ArrayList.RangeCheck(Unknown Source)
    at java.util.ArrayList.get(Unknown Source)
    at model.Return.getReturnMap(Return.java:61)
    at controller.Poller$1.run(Poller.java:29)
    at java.util.TimerThread.mainLoop(Unknown Source)
    at java.util.TimerThread.run(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

此外,如果有人知道反向迭代更好的习语,我很乐意尝试这一点.

java iteration reverse arraylist

31
推荐指数
5
解决办法
7万
查看次数

为什么C#中的集合类(如ArrayList)从多个接口继承,如果其中一个接口继承其余接口?

当我在ArrayList关键字上按f12转到从vs2008生成的元数据时,我发现生成的类声明如下

public class ArrayList : IList, ICollection, IEnumerable, ICloneable
Run Code Online (Sandbox Code Playgroud)

我知道IList已经从ICollection和IEnumerable继承了,那么为什么ArrayList会冗余地从这些接口继承呢?

c# inheritance interface arraylist

31
推荐指数
1
解决办法
3254
查看次数

空ArrayList等于null

是空的Arraylist(以null为其项)被视为null?所以,基本上下面的陈述是正确的:

if (arrayList != null) 
Run Code Online (Sandbox Code Playgroud)

谢谢

java arrays arraylist

31
推荐指数
3
解决办法
16万
查看次数

ArrayList如何工作?

ArrayList在内部使用什么数据结构?

java arraylist

31
推荐指数
3
解决办法
6万
查看次数

31
推荐指数
3
解决办法
6万
查看次数

在Android中将ArrayList转换为String数组

我有一个ArrayList,其中包含[ann,john]形式的值.我想将此ArrayList转换为{"ann","john"}形式的String数组.

我该怎么做?

我的Android代码:

     final Button markabsent = (Button) findViewById(R.id.Button02);
      markabsent.setOnClickListener(new View.OnClickListener() {
          public void onClick(View v) {

            // Perform action on click
             Toast.makeText(display.this,"You have marked the students absent",Toast.LENGTH_SHORT).show();

             SparseBooleanArray checkedabsent = lView.getCheckedItemPositions();



            for (int i = 0; i < arr2.length; i++) 
            {
                if (checkedabsent.get(i)) 
                {
                    items2.add(arr2[i]);
                    System.out.println(items2);

                }
            }

            Log.d("", "items:");
            for (String string : items2)
            {
                Log.d("string is", string);


            }  
          }
      });  
Run Code Online (Sandbox Code Playgroud)

我的Logcat:

     11-10 21:44:00.414: INFO/System.out(2316): [ann, john, ann]
     11-10 21:44:00.414: DEBUG/(2316): items:
     11-10 21:44:00.414: DEBUG/string is(2316): ann
     11-10 …
Run Code Online (Sandbox Code Playgroud)

string android arraylist

31
推荐指数
4
解决办法
10万
查看次数

从内存分配角度看ArrayList与LinkedList

我需要存储大量信息,例如java列表中的"名称".项目数量可以改变(或者简而言之,我不能预定义大小).我认为从内存分配的角度来看,LinkedList比ArrayList更好,对于ArrayList,一旦达到最大大小,内存分配自动加倍,因此总是有可能分配比内存更多的内存.需要什么.

我从其他帖子中了解到,存储在LinkedList中的各个元素比ArrayList占用更多空间,因为LinkedList也需要存储节点信息,但我仍然猜测我已定义的场景LinkedList可能是更好的选择.此外,我不想进入性能方面(获取,删除等),因为已经讨论过很多内容.

java collections linked-list list arraylist

31
推荐指数
3
解决办法
3万
查看次数

传递ArrayList <?实现Parcelable> to Activity

我搜索了一些主题,但没有找到解决我问题的方法.

public class Series implements Parcelable {
private String name;
private int numOfSeason;
private int numOfEpisode;

/** Constructors and Getters/Setters have been removed to make reading easier **/

public Series(Parcel in) {
    String[] data = new String[3];
    in.readStringArray(data);
    this.name = data[0];
    this.numOfSeason = Integer.parseInt(data[1]);
    this.numOfEpisode = Integer.parseInt(data[2]);
}


@Override
public int describeContents() {
    return 0;
}

@Override
public void writeToParcel(Parcel dest, int flags) {
    dest.writeStringArray(new String[] { this.name,
            String.valueOf(this.numOfSeason),
            String.valueOf(this.numOfEpisode) });

}

private void readFromParcel(Parcel in) {
    name = in.readString(); …
Run Code Online (Sandbox Code Playgroud)

android arraylist parcelable

31
推荐指数
1
解决办法
5万
查看次数

从hashmap存储和检索ArrayList值

我有一个以下类型的hashmap

HashMap<String,ArrayList<Integer>> map=new HashMap<String,ArrayList<Integer>>();    
Run Code Online (Sandbox Code Playgroud)

存储的值如下:

mango | 0,4,8,9,12
apple | 2,3
grapes| 1,7
peach | 5,6,11
Run Code Online (Sandbox Code Playgroud)

我想存储以及使用Iterator或任何其他方式使用最少的代码行获取那些整数.我该怎么办?

编辑1

当密钥与适当的行匹配时,数字随机添加(不在一起).

编辑2

添加时如何指向arraylist?

我18在行中添加新号码时收到错误map.put(string,number);

java arraylist hashmap

31
推荐指数
2
解决办法
13万
查看次数

将实体中的列表转换为数据库中的单个字符串列

VARCHAR我的数据库中有一个字段,该字段的值为val1,val2,val3.

是否可以ArrayList<String>使用逗号作为拆分分隔符将其设置为实体的属性?

string hibernate arraylist

31
推荐指数
2
解决办法
2万
查看次数