您的位置:首页 > 其它

很全的ArrayList用法

2014-04-17 20:01 162 查看
转帖自:http://www.java3z.com/cwbwebhome/article/article5/81356.html?id=3615

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对象的索引位置
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: