day09(java集合)学习笔记

大纲

Day09(Java集合)学习目标

【学习目标】理解、了解、应用、记忆

通过今天的学习,参训学员能够:(解释的时候说出二级目标的掌握程度)

  1. 【应用】对象数组
  1. 【应用】能够独立定义一个对象数组并遍历该数组
  2. 【理解】能够阐述对象数组在堆中的内存划分
  1. 【应用】ArrayList集合
  1. 【应用】能够独立使用集合的增删改查方法
  2. 【应用】能够独立写出遍历集合代码
  3. 【应用】能够完成ArrayList练习之获取满足要求的元素
  4. 【应用】能够完成ArrayList练习之存储自定义对象并遍历
  5. 【应用】能够完成ArrayList练习之键盘录入数据存储并遍历
  1. 【应用】学生管理系统案例
  1. 【应用】能够独立完成学生管理系统之查询所有学生功能
  2. 【应用】能够独立完成学生管理系统之添加不重复id的学生功能
  3. 【应用】能够独立完成学生管理系统之删除学生功能
  4. 【应用】能够独立完成学生管理系统之修改学生功能

收获:

一: 对象数组

1创建一个学生数组,存储三个学生对象并遍历

 package com.itheima;
/*
 * 自动生成构造方法:
 * 		代码区域右键 -- Source -- Generate Constructors from Superclass...	无参构造方法
 * 		代码区域右键 -- Source -- Generate Constructor using Fields...		带参构造方法
 * 自动生成getXxx()/setXxx():
 * 		代码区域右键 -- Source -- Generate Getters and Setters...
 */
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;
	}
	
	
}

2

package com.itheima;
/*
 * 创建一个学生数组,存储三个学生对象并遍历
 * 
 * 分析:
 * 		A:定义学生类
 * 		B:创建学生数组
 * 		C:创建学生对象
 * 		D:把学生对象作为元素赋值给学生数组
 * 		E:遍历学生数组
 */
public class StudentDemo {
	public static void main(String[] args) {
		//创建学生数组
		Student[] students = new Student[3];
		
		//创建学生对象
		Student s1 = new Student("曹操",40);
		Student s2 = new Student("刘备",35);
		Student s3 = new Student("孙权",30);
		
		//把学生对象作为元素赋值给学生数组
		students[0] = s1;
		students[1] = s2;
		students[2] = s3;
		
		//遍历学生数组
		for(int x=0; x<students.length; x++) {
			Student s = students[x];
			//System.out.println(s);
			System.out.println(s.getName()+"---"+s.getAge());
		}
	}
}

二:ArrayList集合

ArrayList添加新元素

package com.itheima_01;
import java.util.ArrayList;
 * StringBuilder:
         结果只能是一个字符串类型,不一定满足我们的需求
 * 集合类的特点:
 * 		长度可变。
 * ArrayList<E>:
 * 		大小可变数组的实现

public class ArrayListDemo {
	public static void main(String[] args) {
		//创建集合对象
		ArrayList<String> array = new  ArrayList<String>();
		
		//add(E e):添加元素
		array.add("hello");
		array.add("world");
		array.add("java");
		
		//add(int index,E element):在指定的索引处添加一个元素
		//array.add(1, "android");
		
		System.out.println("array:"+array);
	}
}

ArrayList遍历

package com.itheima_01;
import java.util.ArrayList;

/*
 * ArrayList集合的遍历
 * 		通过size()和get()配合实现的
 */
public class ArrayListDemo3 {
	public static void main(String[] args) {
		//创建集合对象
		ArrayList<String> array = new ArrayList<String>();
		
		//添加元素
		array.add("hello");
		array.add("world");
		array.add("java");
		
		//获取元素
		//原始做法
		System.out.println(array.get(0));
		System.out.println(array.get(1));
		System.out.println(array.get(2));
		System.out.println("----------");
		
		for(int x=0; x<3; x++) {
			System.out.println(array.get(x));
		}
		System.out.println("----------");
		
		//如何知道集合中元素的个数呢?size()
		for(int x=0; x<array.size(); x++) {
			System.out.println(array.get(x));
		}
		System.out.println("----------");
		
		//最标准的用法
		for(int x=0; x<array.size(); x++) {
			String s = array.get(x);
			System.out.println(s);
		}
	}
}

学生管理系统案例

1创建学生类:

package com.itheima;
/*
 * 这是我的学生类
 */
public class Student {
	//学号
	private String id;
	//姓名
	private String name;
	//年龄
	private String age;
	//居住地
	private String address;
	
	public Student() {
		
	}

	public Student(String id, String name, String age, String address) {
		this.id = id;
		this.name = name;
		this.age = age;
		this.address = address;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}

	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}
	
}

2 学生管理系统界面实现

package com.itheima;
import java.util.ArrayList;
import java.util.Scanner;

public class StudentManagerTest {
	public static void main(String[] args) {
		// 创建集合对象,用于存储学生数据
		ArrayList<Student> array = new ArrayList<Student>();

		// 为了让程序能够回到这里来,我们使用循环
		while (true) {
			// 这是学生管理系统的主界面
			System.out.println("--------欢迎来到学生管理系统--------");
			System.out.println("1 查看所有学生");
			System.out.println("2 添加学生");
			System.out.println("3 删除学生");
			System.out.println("4 修改学生");
			System.out.println("5 退出");
			System.out.println("请输入你的选择:");
			// 创建键盘录入对象
			Scanner sc = new Scanner(System.in);
			String choiceString = sc.nextLine();
			// 用switch语句实现选择
			switch (choiceString) {
			case "1":
				// 查看所有学生
				break;
			case "2":
				// 添加学生
				break;
			case "3":
				// 删除学生
				break;
			case "4":
				// 修改学生
				break;
			case "5":
				// 退出
				// System.out.println("谢谢你的使用");
				// break;
			default:
				System.out.println("谢谢你的使用");
				System.exit(0); // JVM退出
				break;
			}
		}
	}
}

猜你喜欢

转载自blog.csdn.net/qq_42198024/article/details/88369240
今日推荐