目录
案例:List集合存储学生对象并遍历
需求:创建一个存储学生对象的List集合,存储三个学生对象,使用程序实现在控制台遍历该集合.
思路:
- 定义学生类
- 创建集合
- 创建学生对象
- 将学生对象添加到集合
- 遍历集合(可以使用迭代器也可也不使用)
- 输出
程序演示:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Student {
public String name;
public 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;
}
}
/*
需求:创建一个存储学生对象的List集合,存储三个学生对象,使用程序实现在控制台遍历该集合.
思路:
① 定义学生类
② 创建集合
③ 创建学生对象
④ 将学生对象添加到集合
⑤ 遍历集合(可以使用迭代器也可也不使用)
*/
class ListDemo {
public static void main(String[] args) {
//创建List集合对象
List<Student> list = new ArrayList<Student>();
//创建学生对象
Student student1 = new Student("林青霞", 21);
Student student2 = new Student("张曼玉", 29);
Student student3 = new Student("王祖贤", 27);
//添加数据
list.add(student1);
list.add(student2);
list.add(student3);
//使用迭代器遍历集合
System.out.println("姓名\t\t年龄");
Iterator<Student> iterator = list.iterator();
while (iterator.hasNext()) {
Student next = iterator.next();
System.out.println(next.getName() + "\t" + next.getAge());
}
System.out.println("-------------");
//使用for循环遍历集合并输出
System.out.println("姓名\t\t年龄");
for (int x = 0; x < list.size(); x++) {
Student student = list.get(x);
System.out.println(student.getName() + "\t" + student.getAge());
}
}
}
案例:List集合存储学生对象用三种方式遍历
需求:创建一个存储学生对象的集合,存储三个学生对象,使用程序实现在控制台遍历该集合。
思路:
- 定义学生类
- 创建List集合对象
- 创建学生对象
- 把学生添加到集合
- 使用普通for循环并输出
- 使用迭代器while循环并输出
- 使用增强for循环并输出
程序演示:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/*
需求:创建一个存储学生对象的集合,存储三个学生对象,使用程序实现在控制台遍历该集合。
思路:
① 定义学生类
② 创建List集合对象
③ 创建学生对象
④ 把学生添加到集合
⑤ 使用普通for循环并输出
⑥ 使用迭代器while循环并输出
⑦ 使用增强for循环并输出
*/
public class Student {
public String name;
public int age;
//无参带参
public Student() {
}
public Student(String name, int age) {
this.name = name;
this.age = age;
}
//get set方法
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;
}
}
class ListDemo {
public static void main(String[] args) {
//创建学生对象和List集合
List<Student> list = new ArrayList<Student>();
Student s1 = new Student("林青霞",28);
Student s2 = new Student("张曼玉",22);
Student s3 = new Student("王祖贤",31);
//添加元素
list.add(s1);
list.add(s2);
list.add(s3);
//普通for循环遍历结合并输出
for (int x = 0; x< list.size();x++){
Student student = list.get(x);
System.out.println(student.getName()+","+ student.getAge());
}
System.out.println("-------------");
//使用迭代器:集合特有的遍历方式遍历集合
Iterator<Student> iterator = list.iterator();
while(iterator.hasNext()){
Student next = iterator.next();
System.out.println(next.getName()+","+next.getAge());
}
System.out.println("-------------");
//使用增强for循环遍历集合并输出
for (Student s : list){
System.out.println(s.getName()+","+s.getAge());
}
}
}
案例:遍历集合
需求:分别使用ArrayList和LinkedList完成存储字符串并遍历
import java.util.*;
/*
List集合常用子类:ArrayList和LinkedList
ArrayList:底层数据结构是数组,查询快,增删慢。
LinkedList:底层数据结构是链表,增删快,查询慢。
需求:分别使用ArrayList和LinkedList完成存储字符串并遍历
*/
public class ListDemo {
public static void main(String[] args) {
//1.创建集合对象
List<String> list1 = new ArrayList<String>();
List<String> list2 = new LinkedList<String>();
//2分别给两个集合添加字符串元素
String s1 = "hello";
String s2 = "world";
String s3 = "java";
list1.add(s1);
list1.add(s2);
list1.add(s3);
list2.add(s1);
list2.add(s2);
list2.add(s3);
//遍历集合,增强for循环
for(String s : list1){
System.out.println(s);
}
System.out.println("--------------");
for (String s : list2){
System.out.println(s);
}
System.out.println("--------------");
//迭代器循环
Iterator<String> iterator1 = list1.iterator();
while(iterator1.hasNext()){
String next = iterator1.next();
System.out.println(next);
}
System.out.println("--------------");
Iterator<String> iterator2 = list2.iterator();
while(iterator2.hasNext()){
String next = iterator2.next();
System.out.println(next);
}
System.out.println("--------------");
//普通for循环
for (int x = 0; x < list1.size();x++){
String s = list1.get(x);
System.out.println(s);
}
System.out.println("--------------");
for (int x = 0; x < list2.size(); x++){
String s = list2.get(x);
System.out.println(s);
}
}
}
--欢迎大家与我一起交流学习java知识