import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
/**
* @author wangze
*/
public class Day08 {
/*
JAVA常用工具_集合
集合简介:什么是结合??? 简称集,用来存储多个元素的容器
集合与数组的区别:元素类型
集合:引用类型(存储基本类型时自动装箱)
数组:基本类型,引用类型
元素个数:
集合:不固定,可任意扩容
数组:固定,不能改变容量
集合的好处:不收容器大小限制,可以随时添加,删除元素,提供了大量操作元素的方法。
单列集合(Collection)
List:
Arraylist
Set:
HashSet
双列集合(Map:key,value)
Map:
HashMap
使用集合的步骤:
创建集合对象
创建元素对象
将元素对象添加到集合对象中
遍历集合
List集合的特点和应用
特点:可重复,有序(存取顺序相同)
应用:创建子类对象 List list=new ArrayList();
add() 向集合中添加元素
size() 获取集合中元素的个数
增强for循环 简化数组和集合的遍历 快捷方式iter
for(数据类型 变量名:数组或者集合对象){
循环体
}
迭代器:iterator 遍历单列集合的通用方式
next(); 返回迭代的下一个元素对象
hasNext() 如果仍有元素可以迭代,则返回true
列表迭代器,只有列表迭代器在遍历集合的同时可以修改集合元素,必须使用列表迭代器的方法
泛型
指任意类型,又叫参数化类型,对具体类型的使用起到辅助作用,类似于方法的参数。
集合类泛型:表示该集合中存放指定类型的元素
List<String>list=new ArrayList<>();
泛型的好处 类型安全,避免了类型转换
使用方法:创建集合对象,
创建元素对象,
将元素对象添加到集合对象中,
遍历集合,
*/
public static void main(String[] args) {
List list = new ArrayList();
Person p1 = new Person("WANGZE",20);
Person p2 = new Person("索隆",22);
Person p3 = new Person("路飞",21);
Person p4 = new Person("娜美",24);
Person p5 = new Person("乔巴",15);
list.add(p1);
list.add(p2);
list.add(p3);
list.add(p4);
list.add(p5);
System.out.println(list);
System.out.println(list.get(2));
System.out.println(list.size());
for (Object obj :list) {
System.out.println(obj);
}
// 迭代器遍历:
Iterator it=list.iterator();
while (it.hasNext()){//如果有元素就一直迭代
System.out.println(it.next());
}
System.out.println("*-----------");
// 迭代器高级使用,本例不可用,仅看格式。
// ListIterator itt= list.listIterator();
// while (itt.hasNext()){
// if ("路飞".equals(itt.next())){
// itt.add("...");
// }
//
// }
// System.out.println(list);
// 泛型----------
List<String> list1=new ArrayList<>();
list1.add("abc");
list1.add("edf");
for(String e:list1){
System.out.println(e);
}
}
}
class Person{
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
java8(List集合,增强for,泛型)
最新推荐文章于 2024-09-23 19:56:24 发布