Java集合框架包含的内容
Java集合框架提供了一套性能优良、使用方便的接口和类,它们位于java.util包中
ArrayList
public static void main(String[] args) {
List<qie> qieList = new ArrayList<qie>();
qie q1 = new qie(1,"欧欧","q仔");
qie q2 = new qie(2,"丫丫","q妹");
qie q3 = new qie(3,"美美","q妹");
qie q4 = new qie(4,"菲菲","q妹");
qieList.add(q1);//添加元素
qieList.add(q2);
qieList.add(q3);
qieList.add(q4);
//循环遍历元素
for (int i = 0;i<qieList.size();i++){
qie qie1 = qieList.get(i);
System.out.println(qie1.getName()+"\t"+qie1.getSex());
}
System.out.println("删除");
qieList.remove(q1);//删除元素
//遍历删除成功之后的元素
for (int i = 0;i<qieList.size();i++){
qie qie1 = qieList.get(i);
System.out.println(qie1.getName()+"\t"+qie1.getSex());
}
System.out.println("查询");
if(qieList.contains(q3)){
System.out.println("查询成功");
}else {
System.out.println("查询失败");
}
}
LinkedList
public static void main(String[] args) {
LinkedList list = new LinkedList();
Dog d1 = new Dog(1, "小黑", "拉布拉多");
Dog d2 = new Dog(2, "小黄", "吉娃娃");
Dog d3 = new Dog(3, "小花", "雪纳瑞");
Dog d4 = new Dog(4, "小草", "藏獒");
Dog d5 = new Dog(5, "旺财", "藏獒");
list.add(d1);//添加元素
list.add(d4);
list.addFirst(d3);
list.addLast(d2);
System.out.println("共有" + list.size() + "条狗");
Dog dogFirst = (Dog) list.getFirst();//第一条狗
Dog dogLast = (Dog) list.getLast();//最后一条狗
System.out.println(dogFirst.getName());
System.out.println(dogLast.getName());
System.out.println("--------------------");
//循环遍历
for (int i = 0; i < list.size(); i++) {
Dog dog = (Dog) list.get(i);
System.out.println(dog.getName() + "\t" +dog.getStrain());
}
list.remove(0);//删除
list.removeFirst();
list.removeLast();
System.out.println("--------------------");
for (int i = 0; i < list.size(); i++) {
Dog dog = (Dog) list.get(i);
System.out.println(dog.getName() + "\t" + dog.getStrain());
}
}
Set接口
Set接口
Set接口存储一组唯一,无序的对象
HashSet是Set接口常用的实现类
Set中存放对象的引用
public static void main(String[] args) {
Set set = new HashSet();
Dog d1 = new Dog(1, "小黑", "拉布拉多");
Dog d2 = new Dog(2, "小黄", "吉娃娃");
Dog d3 = new Dog(3, "小花", "雪纳瑞");
set.add(d1);//添加
set.add(d2);
set.add(d3);
d1.setName("小白");
set.add(d1);
System.out.println(set.size());
//遍历set
for (Object obj : set) {
Dog dog = (Dog) obj;
System.out.println(dog.getName() + "\t" + dog.getStrain());
}
}
Map接口
public static void main(String[] args) {
Dog d1 = new Dog(1, "小黑", "拉布拉多");
Dog d2 = new Dog(2, "小黄", "吉娃娃");
Dog d3 = new Dog(3, "小花", "雪纳瑞");
Map dogs = new HashMap();
//map -->key是唯一 value-->不唯一
dogs.put("one", d1);//添加
dogs.put("two", d2);
dogs.put("three", d3);
dogs.put("a", d1);
dogs.put("a", d2);
//根据key 获取value
Dog dog = (Dog) dogs.get("a");
System.out.println(dog.getName());
Dog dog1 = (Dog) dogs.get("two");
System.out.println(dog1.getName());
//检查key和value在集合中是否存在
System.out.println(dogs.containsKey("a"));
System.out.println(dogs.containsValue(d2));
//删除前后
System.out.println("map中的元素是:" + dogs.size());
dogs.remove("a");
System.out.println("map中的元素是:" + dogs.size());
System.out.println(dogs.keySet());
System.out.println(dogs.values());
Scanner input = new Scanner(System.in);
String key = input.next();
if (dogs.containsKey(key)) {
Dog searchDog = (Dog) dogs.get(key);
System.out.println(searchDog.getName() + "\t" + searchDog.getStrain());
} else {
System.out.println("不存在!");
}
}