ArrayList用法

ArrayList用法:
ArrayList是接口List的实现类,所以推荐以List接口来使用。


1、创建ArrayList的List接口
例:
    List books = new ArrayList();
Java支持泛形后,创建的同时可以指定元素的类型。
例:
    Class Book {
        ......
    }
    List<Book> books = new ArrayList<Book>();
为避免容器自动扩容的次数而影响性能,可以指定创建时的元素大小。
例:
    // 创建可容纳100个Book对象的ArrayList,超过100个将自动扩容
    List<Book> books = new ArrayList<Book>(100);
 
   
2、添加元素
添加在末尾
例:
    Book book1 = new Book();
    Book book2 = new Book();
    Book book3 = new Book();
    books.add(book1);
    books.add(book2);
    books.add(book3);
添加在指定索引处
例:
    // 虽然加book1后直接加book3了,但book2是被加在索引1的地方
    // 所以效果同上,是book1、book2、book3的顺序
    books.add(book1);
    books.add(book3);
    books.add(1, book2);


3、 获取ArrayList中元素的个数
例:
    int count = books.size();
   
   
4、读取元素
利用普通的for循环:
例:
    for (int i = 0; i < books.size(); i++ {
        Book newBook = books.get(i);
        // 不带泛形的注意要转型
        Book book = (Book) books.get(i);
        System.out.println(book.getName());
    }
利用for循环的新特性:
例:
    for (Book book : books) {
        // 用book就能访问了
        System.out.println(book.getName());
    }
利用枚举:
例:
    Iterator<Book> iter = books.iterator();
    while (iter.hasNext()) {
        Book book = iter.next();
        System.out.println(book.getName());
    }
 
 
5、移除元素
移除指定索引处的元素
例:
    books.remove(0); // 移除book1
    books.remove(1); // 移除book2
    books.remove(2); // 移除book3
移除指定对象的所在元素
例:
    Book delBook = books.get(1);
    books.remove(delBook); // 移除book2
移除所有元素
例:
    books.clear();
   
   
6、判断ArrayList是否为空(没有元素)
原方法:
    if (books.isEmpty()) {
    }
直接判断大小:
    if (books.size() == 0) {
    }
   
   
7、判断ArrayList中是否已经存在了某对象
例:
    // 判断是否已经存在book2对象
    if (books.contains(book2)) { // 已经存在
    }


8、根据对象反查询它的索引位置
从前住后查询,反回第一个符合条件的位置
例:
    list.indexOf(book2); // 查询book2对象的索引位置
从后住前查询,反回第一个符合条件的位置
例:
    list.lastIndexOf(book2); // 查询book2对象的索引位置
   
以上这些掌握后,基本就没问题了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值