文章目录
一、Java常用工具_集合 简介
1.集合概念
简称集,是用来存储多个元素的容器
2.集合和数组的区别
(1)元素类型
集合:引用类型(存储基本类型时自动装箱)
数组:基本类型、引用类型
(2)元素个数
集合:不固定,可以任意扩容
数组:固定,不能改变容量
集合的好处
① 不受容器大小限制,可以随时添加、删除元素
② Java提供了大量操作元素的方法(判断、获取等)
3.Java的集合体系
(1)单列集合(Collection)
List(接口):(该接口拥有很多子类)最常见的子类是ArrayList
Set(接口):(该接口拥有很多子类)最常见的子类是HashSet
(2)双列集合(Map:key,value)
Map(接口):(该接口拥有很多子类)最常见的子类是HashaMap
二、List集合的特点和应用
特点:
可重复、有序(存取顺序相同)
应用:(父接口指向子类对象)
List list = new ArrayList();
例:List集合的简单使用
Student类部分代码:
package Demo;
//学生类
public class Student {
//成员变量
private String name;
private int age;
//空参构造
public Student() {
}
//全参构造
public Student(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 "Student{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
Main(主方法)类部分代码:
package Demo;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
//需求:在List中添加3个学生对象,然后遍历
//1.创建集合对象
List list = new ArrayList();
//2.创建元素对象
Student s1 = new Student("张三",21);
Student s2 = new Student("张三",21);//验证可重复性
Student s3 = new Student("王二",25);
Student s4 = new Student("老王",21);
//3.将元素对象添加到集合对象中
list.add(s1);
list.add(s2);
list.add(s3);
list.add(s4);
//直接打印集合
System.out.println(list);
//获取索引为2的集合
Object obj = list.get(2);
System.out.println("索引为2的元素时:"+obj);
//获取集合中的元素个数
System.out.println("元素中的集合个数为:"+list.size());
System.out.println("--------------------------");
//4.遍历集合
for(int i = 0;i < list.size();i++) {
Object obj2 = list.get(i);
System.out.println("索引为:"+i+"的元素是:"+obj2);
}
}
}
运行结果:
三、增强for的使用
增强for循环的作用:简化数组和集合的遍历
增强for循环的格式:
例:使用增强for循环遍历List集合
package Demo;
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
//需求:通过增强for循环遍历List集合
//1.创建集合对象
List list = new ArrayList();
//2.创建元素对象
//3.将元素对象添加到集合对象中
list.add(10);
list.add(10);
list.add(30);
list.add(20);
list.add(40);
//4.遍历集合
for(Object obj:list) {
//obj是集合中的元素,其本身应该是Integer类型的数据
Integer ii = (Integer)obj;
System.out.println(ii);
}
System.out.println("--------------");
for (Object obj : list) {
System.out