Java基础day9
生活随笔
收集整理的這篇文章主要介紹了
Java基础day9
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java基礎day9
- Java基礎day9-ArrayList和學生管理系統
- 1.ArrayList
- 1.1 ArrayList類概述
- 1.2 ArrayList類常用方法
- 1.2.1 構造方法
- 1.2.2 成員方法
- 1.3ArrayList存儲字符串并遍歷
- 1.4 ArrayList存儲學生對象并遍歷
- 1.5 ArrayList存儲學生對象并遍歷升級版
- 2.學生管理系統
- 2.1學生管理系統實現步驟
- 2.2學生類的定義
- 2.3測試類的定義
Java基礎day9-ArrayList和學生管理系統
1.ArrayList
1.1 ArrayList類概述
什么是集合提供一種存儲空間可變的存儲模型,存儲的數據容量可以發生改變 ArrayList集合的特點底層是數組實現的,長度可以變化 泛型的使用用于約束集合中存儲元素的數據類型1.2 ArrayList類常用方法
1.2.1 構造方法
public ArrayList() 創建一個空的集合對象1.2.2 成員方法
public boolean remove(Object o) 刪除指定的元素,返回刪除是否成功 public E remove(int index) 刪除指定索引處的元素,返回被刪除的元素 public E set(int index,E element) 修改指定索引處的元素,返回被修改的元素 public E get(int index) 返回指定索引處的元素 public int size() 返回集合中的元素的個數 public boolean add(E e) 將指定的元素追加到此集合的末尾 public void add(int index,E element) 在此集合中的指定位置插入指定的元素示例代碼:
import java.util.ArrayList; public class ArrayListdemo {public static void main(String[] args) {//創建集合ArrayList<String> array = new ArrayList<String>();array.add("hello");array.add("world");//刪除元素 // System.out.println(array.remove("hello"));System.out.println(array.remove(0));System.out.println(array.set(0,"java"));System.out.println(array.get(0));//輸出System.out.println(array.size());System.out.println(array);} }1.3ArrayList存儲字符串并遍歷
需求:創建一個存儲字符串的集合,存儲3個字符串元素,使用程序實現在控制臺遍歷該集合代碼實現:
/* 思路:創建集合對象往集合對象中添加字符串對象遍歷集合,獲取每個元素遍歷集合,獲取長度遍歷集合通用形式 */ public class ArrayListdemo{public static void main(String[] args) {ArrayList<String> array = new ArrayList<>();array.add("jack");array.add("rose");array.add("third");System.out.println(array.size());System.out.println(array);for(int i=0;i<array.size();i++){String s = array.get(i);System.out.println(s);}} }1.4 ArrayList存儲學生對象并遍歷
需求:創建一個存儲學生對象的集合,存儲3個學生對象,使用程序實現在控制臺遍歷該集合代碼實現:
import java.util.ArrayList;public class ArrayListdemo {public static void main(String[] args) {ArrayList<Student> array = new ArrayList<>();Student s1 = new Student("林青霞", 30);Student s2 = new Student("風清揚", 33);Student s3 = new Student("張曼玉", 18);array.add(s1);array.add(s2);array.add(s3);for (int i = 0; i < array.size(); i++) {Student s = array.get(i);System.out.println(s.getname() + s.getage());}} }1.5 ArrayList存儲學生對象并遍歷升級版
需求:創建一個存儲學生對象的集合,存儲3個學生對象,使用程序實現在控制臺遍歷該集合學生的姓名和年齡來自于鍵盤錄入代碼實現:
import java.util.ArrayList; import java.util.Scanner;/* 思路:定義學生類創建集合對象鍵盤錄入所需要的數據創建學生對象,把鍵盤錄入的數據賦值給學生對象的成員變量往集合中添加學生對象遍歷集合 */ public class ArrayListdemo {public static void main(String[] args) {ArrayList<Student> array = new ArrayList<Student>();addStudent(array);addStudent(array);addStudent(array);for (int i = 0; i < array.size(); i++) {Student s = array.get(i);System.out.println("學生姓名:" + s.getname() + " ,學生年齡:" + s.getage());}}public static void addStudent(ArrayList<Student> array) {Scanner sc = new Scanner(System.in);System.out.println("請輸入學生姓名");String name = sc.nextLine();System.out.println("請輸入學生年齡");String age = sc.nextLine();Student s = new Student();s.setname(name);s.setage(age);array.add(s);} }2.學生管理系統
2.1學生管理系統實現步驟
需求: 針對目前我們的所學內容,完成一個綜合案例:學生管理系統!該系統主要功能如下: 添加學生:通過鍵盤錄入學生信息,添加到集合中 刪除學生:通過鍵盤錄入要刪除學生的學號,將該學生對象從集合中刪除 修改學生:通過鍵盤錄入要修改學生的學號,將該學生對象其他信息進行修改 查看學生:將集合中的學生對象信息進行展示 退出系統:結束程序實現步驟 1. 定義學生類,包含以下成員變量 private String sid // 學生id private String name // 學生姓名 private String age // 學生年齡 private String address // 學生所在地 2. 學生管理系統主界面的搭建步驟 2.1 用輸出語句完成主界面的編寫 2.2 用Scanner實現鍵盤輸入 2.3 用switch語句完成選擇的功能 2.4 用 循環完成功能結束后再次回到主界面 3. 學生管理系統的添加學生功能實現步驟 3.1 定義一個方法,接收ArrayList集合 3.2 方法內完成添加學生的功能 ①鍵盤錄入學生信息 ②根據錄 入的信息創建學生對象 ③將學生對象添加到集合中 ④提示添加成功信息 3.3 在添加學生的選項里調用 添加學生的方法 4. 學生管理系統的查看學生功能實現步驟 4.1 定義一個方法,接收ArrayList集合 4.2 方法內遍歷集合,將學生信息進行輸出 4.3 在查看所有學生選 項里調用查看學生方法 5. 學生管理系統的刪除學生功能實現步驟 5.1 定義一個方法,接收ArrayList集合 5.2 方法中接收要刪除學生的學號 5.3 遍歷集合,獲取每個學生對 象 5.4 使用學生對象的學號和錄入的要刪除的學號進行比較,如果相同,則將當前學生對象從集合中刪除 5.5 在刪除學生選項里調用刪除學生的方法 6. 學生管理系統的修改學生功能實現步驟 //創建學生對象,把鍵盤錄入的數據賦值給學生對象的成員變量 Student s = new Student(); s.setName(name); s.setAge(age); //往集合中添加學生對象 array.add(s); } } 6.1 定義一個方法,接收ArrayList集合 6.2 方法中接收要修改學生的學號 6.3 通過鍵盤錄入學生對象所需 的信息,并創建對象 6.4 遍歷集合,獲取每一個學生對象。并和錄入的修改學生學號進行比較.如果相 同,則使用新學生對象替換當前學生對象 6.5 在修改學生選項里調用修改學生的方法 7. 退出系統 使用System.exit(0);退出JVM2.2學生類的定義
public class Student {private String sid;private String name;private String age;private String address;public Student(){}public Student(String sid, String name, String age, String address) {this.sid = sid;this.name = name;this.age = age;this.address = address;}public void setSid(String sid) {this.sid = sid;}public void setName(String name) {this.name = name;}public void setAge(String age) {this.age = age;}public void setAddress(String address) {this.address = address;}public String getSid() {return sid;}public String getName() {return name;}public String getAge() {return age;}public String getAddress() {return address;} }2.3測試類的定義
import java.util.ArrayList; import java.util.Scanner;public class StudentManager {public static void main(String[] args) {/*1:用輸出語句完成主界面的編寫2:用Scanner實現鍵盤錄入數據3:用switch語句完成操作的選擇4:用循環完成再次回到主界面*///創建集合對象,用于保存學生數據信息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錄入主數據Scanner sc = new Scanner(System.in);String line = sc.nextLine();switch (line) {case "1":addStudent(array);break;case "2":deleteStudent(array);break;case "3":updateStudent(array);break;case "4":findAllStudent(array);break;case "5":System.out.println("謝謝使用");System.exit(0);}}}//定義添加學生信息的方法public static void addStudent(ArrayList<Student> array) {//鍵盤錄入學生信息Scanner sc = new Scanner(System.in);String sid;while (true) {System.out.println("請輸入學生學號:");sid = sc.nextLine();boolean flag = isUsed(array, sid);if (flag) {System.out.println("你輸入的學號已被使用,請重新輸入");} else {break;}}System.out.println("請輸入學生姓名:");String name = sc.nextLine();System.out.println("請輸入學生年齡:");String age = sc.nextLine();System.out.println("請輸入學生居住地:");String address = sc.nextLine();//創建學生對象,錄入數據Student s = new Student();s.setSid(sid);s.setName(name);s.setAge(age);s.setAddress(address);//將學生信息添加到集合array中去array.add(s);System.out.println("添加學生信息成功");}public static boolean isUsed(ArrayList<Student> array, String sid) {boolean flag = false;for (int i = 0; i < array.size(); i++) {Student s = array.get(i);if (s.getSid().equals(sid)) {flag = true;break;}}return flag;}//定義方法刪除學生信息public static void deleteStudent(ArrayList<Student> array) {Scanner sc = new Scanner(System.in);System.out.println("請輸入你要刪除學生的學號");String sid = sc.nextLine();//先判斷學號是否存在int index = -1;for (int i = 0; i < array.size(); i++) {Student s = array.get(i);if (s.getSid().equals(sid)) {index = 1;break;}}if (index == -1) {System.out.println("你輸入的學號不存在,請重新輸入");} else {array.remove(index);System.out.println("刪除成功");}}//定義方法修改學生信息public static void updateStudent(ArrayList<Student> array) {Scanner sc = new Scanner(System.in);System.out.println("請輸入你要修改信息的學生的學號:");String sid = sc.nextLine();System.out.println("請輸入學生新的姓名:");String name = sc.nextLine();System.out.println("請輸入學生新的年齡:");String age = sc.nextLine();System.out.println("請輸入學生新的地址:");String address = sc.nextLine();//創建學生對象并賦值Student s = new Student();s.setSid(sid);s.setName(name);s.setAge(age);s.setAddress(address);//遍歷集合修改對應信息for (int i = 0; i < array.size(); i++) {Student student = array.get(i);if (array.get(i).getSid().equals(sid)) {array.set(i, s);}}System.out.println("修改學生信息成功");}//定義方法查看學生信息public static void findAllStudent(ArrayList<Student> array) {//判斷集合中是否有數據,如果沒有顯示提示信息if (array.size() == 0) {System.out.println("無信息");return;}System.out.println("學號\t姓名\t年齡\t居住地");//將集合中數據取出按照對應格式顯示學生信息,年齡顯示補充“歲"for (int i = 0; i < array.size(); i++) {Student s = array.get(i);System.out.println(s.getSid() + "\t\t" + s.getName() + "\t\t" + s.getAge() + "歲\t\t" + s.getAddress());}}}總結
以上是生活随笔為你收集整理的Java基础day9的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mybatis 插入时获取主键的方式
- 下一篇: Java基础day10