日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

Java09-day09【ArrayList(概述、构造方法、常用方法、遍历)、简易学生管理系统】

發布時間:2024/9/30 windows 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java09-day09【ArrayList(概述、构造方法、常用方法、遍历)、简易学生管理系统】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • java零基礎入門到精通(2019版)【黑馬程序員】
  • 視頻+資料:【鏈接:https://pan.baidu.com/s/1MdFNUADVSFf-lVw3SJRvtg? ?提取碼:zjxs】
  • “Java基礎”專欄
  • Java基礎--學習筆記(零起點打開java世界的大門)--博客匯總表

目? ?錄

134_ArrayList

1.1、集合概述

135_ArrayList構造和添加

1.2、ArrayList構造方法和添加方法

136_ArrayList常用方法

1.3、ArrayList常用方法

136_ArrayList存儲字符串并遍歷

137_ArrayList存儲學生對象并遍歷

138_ArrayList存儲學生對象并遍歷升級版

139_學生管理系統項目演示

1.1、項目演示

140_學生管理系統之學生類

1.2、學生管理系統實現思路

1.3、定義學生類

141_學生管理系統之主界面

1.4、主界面的代碼編寫

142_學生管理系統之添加學生

1.5、添加學生的代碼編寫

143_學生管理系統之查看所有學生

1.6、查看學生的代碼編寫

144_學生管理系統之查看所有學生升級版

1.7、查看學生的代碼編寫升級版

145_學生管理系統之刪除學生

1.8、刪除學生的代碼編寫

146_學生管理系統之修改學生

1.9、修改學生的代碼編寫

147_學生管理系統之學號不存在問題

1.10、解決 刪除/修改 學生 學號不存在問題

148_學生管理系統之學號重復問題

1.11、解決添加學生學號重復問題

簡易學生管理系統

1、實現步驟

1.1、案例需求

1.2、實現步驟

2、代碼匯總

2.1、Student.java

2.2、StudentManager.java

3、運行截圖


134_ArrayList

1.1、集合概述

編程的時候如果要存儲多個數據,

使用長度固定的數組存儲格式,不一定滿足我們的需求,更適應不了變化的需求,那么,此時該如何選擇呢?【集合】

什么是集合?

  • 提供一種存儲空間可變的存儲模型,存儲的數據容量可以發生改變。

ArrayList<E>集合的特點:

  • 可調整大小的數組實現(底層是數組實現的,長度可以變化)。
  • <E>:是一種特殊的數據類型,泛型。

泛型的使用:

  • 在出現E的地方,使用引用數據類型替換即可(用于約束集合中存儲元素的數據類型)。
  • 舉例:ArrayList<String>、ArrayList<Student>

135_ArrayList構造和添加

1.2、ArrayList構造方法和添加方法

JDK版本:jdk1.8.0_201

136_ArrayList常用方法

1.3、ArrayList常用方法

136_ArrayList存儲字符串并遍歷

137_ArrayList存儲學生對象并遍歷

138_ArrayList存儲學生對象并遍歷升級版

集合:引用類型

?

139_學生管理系統項目演示

1.1、項目演示

140_學生管理系統之學生類

1.2、學生管理系統實現思路

  • 定義學生類
  • 主界面的代碼編寫
  • 添加學生的代碼編寫
  • 查看學生的代碼編寫
  • 刪除學生的代碼編寫
  • 修改學生的代碼編寫
  • 1.3、定義學生類

    Alt+Insert? 快捷鍵? ?快速生成“構造方法、getter()方法、setter()方法”

    141_學生管理系統之主界面

    1.4、主界面的代碼編寫

    System.exit(0); // JVM退出

    142_學生管理系統之添加學生

    1.5、添加學生的代碼編寫

    143_學生管理系統之查看所有學生

    1.6、查看學生的代碼編寫

    144_學生管理系統之查看所有學生升級版

    1.7、查看學生的代碼編寫升級版

    ?

    145_學生管理系統之刪除學生

    1.8、刪除學生的代碼編寫

    146_學生管理系統之修改學生

    1.9、修改學生的代碼編寫

    147_學生管理系統之學號不存在問題

    1.10、解決 刪除/修改 學生 學號不存在問題

    148_學生管理系統之學號重復問題

    1.11、解決添加學生學號重復問題

    簡易學生管理系統

    1、實現步驟

    1.1、案例需求

    針對目前的所學內容,完成一個綜合案例:學生管理系統!該系統主要功能如下:

  • 添加學生:通過鍵盤錄入學生信息,添加到集合中
  • 刪除學生:通過鍵盤錄入要刪除學生的學號,將該學生對象從集合中刪除
  • 修改學生:通過鍵盤錄入要修改學生的學號,將該學生對象其他信息進行修改
  • 查看學生:將集合中的學生對象信息進行展示
  • 退出系統:結束程序
  • 1.2、實現步驟

    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. 學生管理系統的修改學生功能實現步驟

    • 6.1 定義一個方法,接收ArrayList集合
    • 6.2 方法中接收要修改學生的學號
    • 6.3 通過鍵盤錄入學生對象所需的信息,并創建對象
    • 6.4 遍歷集合,獲取每一個學生對象。并和錄入的修改學生學號進行比較,如果相同,則使用新學生對象替換當前學生對象
    • 6.5 在修改學生選項里調用修改學生的方法

    7. 退出系統

    • 使用System.exit(0); // 退出JVM

    2、代碼匯總

    2.1、Student.java

    package com.itheima;/*學生類Alt+Insert 根據自己的需要進行選擇*/ 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 String getSid() {return sid;}public void setSid(String sid) {this.sid = sid;}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.2、StudentManager.java

    package com.itheima;import java.util.ArrayList; import java.util.Scanner;/*學生管理系統*/ public class StudentManager {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實現鍵盤錄入數據Scanner sc = new Scanner(System.in);String line = sc.nextLine();//用switch語句完成操作的選擇switch (line) {case "1":addStudent(array);break;case "2":deleteStudent(array);break;case "3": // System.out.println("修改學生");updateStudent(array);break;case "4":findAllStudent(array);break;case "5":System.out.println("謝謝使用");System.exit(0); // JVM退出}}}//定義一個方法,用于添加學生信息/*public static void addStudent(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);//將學生對象添加到集合中array.add(s);//給出添加成功提示System.out.println("添加學生成功");}*/public static void addStudent(ArrayList<Student> array) {//鍵盤錄入學生對象所需要的數據,顯示提示信息,提示要輸入何種信息Scanner sc = new Scanner(System.in);//為了讓sid在while循環外面被訪問到,我們就把它定義在了循環外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.add(s);//給出添加成功提示System.out.println("添加學生成功");}//定義一個方法,判斷學號是否被使用public static boolean isUsed(ArrayList<Student> array, String sid) {//如果與集合中的某一個學生學號相同,返回true;如果都不相同,返回falseboolean 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 findAllStudent(ArrayList<Student> array) {//顯示表頭信息//\t 其實就是tab鍵的位置System.out.println("學號\t\t\t姓名\t\t年齡\t\t居住地");//將集合中數據取出按照對應格式顯示學生信息,年齡顯示補充“歲”for (int i = 0; i < array.size(); i++) {Student s = array.get(i);System.out.println(s.getSid() + "\t" + s.getName() + "\t" + s.getAge() + "歲\t\t" + s.getAddress());}}*/public static void findAllStudent(ArrayList<Student> array) {//判斷集合中是否有數據,如果沒有顯示提示信息if (array.size() == 0) {System.out.println("無信息,請先添加信息再查詢");//為了讓程序不在往下執行,給出return;return;}//顯示表頭信息//\t 其實就是tab鍵的位置System.out.println("學號\t\t\t姓名\t\t年齡\t\t居住地");//將集合中數據取出按照對應格式顯示學生信息,年齡顯示補充“歲”for (int i = 0; i < array.size(); i++) {Student s = array.get(i);System.out.println(s.getSid() + "\t" + s.getName() + "\t" + s.getAge() + "歲\t\t" + s.getAddress());}}//定義一個方法,用于刪除學生信息/*public static void deleteStudent(ArrayList<Student> array) {//鍵盤錄入要刪除的學生學號,顯示提示信息Scanner sc = new Scanner(System.in);System.out.println("請輸入你要刪除的學生的學號:");String sid = sc.nextLine();//遍歷集合將對應學生對象從集合中刪除for(int i=0; i<array.size(); i++) {Student s = array.get(i);if(s.getSid().equals(sid)) {array.remove(i);break;}}//給出刪除成功提示System.out.println("刪除學生成功");}*/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)) { // int index = i;index = i;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 (student.getSid().equals(sid)) {array.set(i, s);break;}}//給出修改成功提示System.out.println("修改學生成功");} }

    3、運行截圖

    總結

    以上是生活随笔為你收集整理的Java09-day09【ArrayList(概述、构造方法、常用方法、遍历)、简易学生管理系统】的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。