您的位置:首页 > 编程语言 > Java开发

JAVA | 51 - 类集框架 | List 接口

2017-12-05 22:20 399 查看
类集就是 java 数据结构实现,类集就是动态对象数组。

Collection 是整个类集之中单值保存的最大父接口,每一次向集合中保存一个对象。

因为代码的规范化产生,所以从 PetShop 开始,就不再使用模糊不清的 Collection 接口,而都使用 List 子接口或者 Set 子接口。

java 中数据的保存数据就是数据的添加数据。

List 集合中保存的数据可以重复

List 子接口比 Collection 接口多了 get 方法。

List 选择子类就用 ArrayList。

Vector 子类是Java1推出的,同步处理,线程安全,效率低。

ArrayList 子类是Java2推出的,异步处理,非线程安全,效率高。

import java.util.ArrayList;
import java.util.List;
class Book{
private String title;
private int price;
public Book(String title, int price){
this.title = title;
this.price = price;
}
@Override
public String toString() {
return this.title + " " + this.price;
}
@Override
public boolean equals(Object obj) {
if(obj == this){
return true;
}
if(obj == null){
return false;
}
if(!(obj instanceof Book)){
return false;
}
Book book = (Book) obj;
if(book.title.equals(this.title) && book.price == this.price){
return true;
}
return false;
}
}
public class Main {
public static void main(String[] args) throws Exception{
// 设置了泛型,从而保证集合中所有的数据类型都一致
List <Book> list = new ArrayList <Book> ();
list.add(new Book("java",100));
list.add(new Book("c",89));
list.add(new Book("c++",100));
list.add(new Book("python",100));
list.add(new Book("python",100));
// 任何情况下集合的删除与数据的查询都必须提供有 equals 方法
list.remove(new Book("c",89));
System.out.println(list.contains(new Book("c",89)));
System.out.println(list);
for(int i = 0; i < list.size(); i ++){
// List 子接口扩充的 get 方法
System.out.println(list.get(i));
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: