欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 艺术 > 集合框架05:List接口使用、List实现类、ArrayList使用

集合框架05:List接口使用、List实现类、ArrayList使用

2024/10/24 19:13:33 来源:https://blog.csdn.net/zhangjinajian759/article/details/142769781  浏览:    关键词:集合框架05:List接口使用、List实现类、ArrayList使用

视频链接:13.11 ArrayList使用_哔哩哔哩_bilibiliicon-default.png?t=O83Ahttps://www.bilibili.com/video/BV1zD4y1Q7Fw?p=11&vd_source=b5775c3a4ea16a5306db9c7c1c1486b5

1.List接口使用代码举例

package com.yundait.Demo01;import java.util.ArrayList;
import java.util.List;public class ListDemo02 {public static void main(String[] args){//创建集合List list = new ArrayList<>();//1.添加数字数据(自动装箱)list.add(20);list.add(30);list.add(40);list.add(50);list.add(60);System.out.println("元素个数" + list.size());System.out.println(list.toString());//2.删除操作//list.remove(0);通过下标方式删除list.remove(new Integer(20));System.out.println("元素个数" + list.size());System.out.println(list.toString());//3.subList方法;返回子集合,含头不含尾(左闭右开)List subList = list.subList(1, 3);System.out.println(subList.toString());}}

输出结果:

2.List实现类介绍

3.ArrayList使用代码示例

重写Student类的equals方法:

package com.yundait.Demo01;/****学生类* @author zhang*/
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;}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", age=" + age +'}';}@Overridepublic boolean equals(Object obj) {//1.判断是不是同一个对象if (this==obj){return true;}//2.判断是否为空if (obj==null){return false;}//3.判断是否为Student类型if (obj instanceof Student){Student s = (Student)obj;//4.比较属性if (this.name.equals(s.getName())&&this.age == s.getAge()){return true;}}//5.不满足条件返回falsereturn false;}
}
package com.yundait.Demo01;import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;public class ArrayListDemo01 {public static void main(String[] args) {//创建集合ArrayList arrayList = new ArrayList<>();//1.添加元素Student s1 = new Student("刘德华",20);Student s2 = new Student("郭富城",22);Student s3 = new Student("梁朝伟",24);Student s4 = new Student("甄子丹",18);arrayList.add(s1);arrayList.add(s2);arrayList.add(s3);arrayList.add(s4);System.out.println("元素个数" + arrayList.size());System.out.println(arrayList.toString());//2.删除元素//arrayList.remove(s1);arrayList.remove(new Student("刘德华",20)); //要想以这种方式删除需要重写equals方法System.out.println("删除之后元素个数" + arrayList.size());System.out.println(arrayList.toString());//3.遍历//3.1 使用Iterator进行遍历System.out.println("--------3.1 使用Iterator进行遍历---------");Iterator it = arrayList.iterator();while (it.hasNext()){Student s = (Student)it.next();System.out.println(s.toString());}//3.2使用ListIterator进行正序遍历System.out.println("----------3.2使用ListIterator进行正序遍历-----------");ListIterator lit= arrayList.listIterator();while(lit.hasNext()){Student s = (Student) lit.next();System.out.println(s.toString());}//3.3使用ListIterator进行逆序遍历System.out.println("----------3.2使用ListIterator进行逆序遍历-----------");while (lit.hasPrevious()){Student s = (Student) lit.previous();System.out.println(s.toString());}//4.判断//要实现一下方式删除的前提也是需要重写equals方法System.out.println(arrayList.contains(new Student("梁朝伟",24)));System.out.println(arrayList.isEmpty());//查找元素位置System.out.println(arrayList.indexOf(new Student("梁朝伟",24)));}
}

输出结果:

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com