ArratList集合案例:元素搜索

ArratList集合案例:元素搜索

package com.wsl.api.arraylist;

import java.util.ArrayList;
import java.util.Scanner;

/*
     后台程序需要存储如图学生信息并展示,然后要提供 按照学号搜索学生信息的功能
 */
public class StudentSystem {
    public static void main(String[] args) {
        //1.创建一个学生类
        //2.创建一个学生类型的ArrayList集合
        ArrayList<Student> stuSystem= new ArrayList<>();
        //3.创建四个学生对象 封装好数据存入集合中
        stuSystem.add(new Student(20180302,"叶孤城",23,"护理一班"));
        stuSystem.add(new Student(20180303,"东方不败",23,"推拿二班"));
        stuSystem.add(new Student(20180304,"西门吹雪",26,"中药学四班"));
        stuSystem.add(new Student(20180305,"梅超风",26,"神经科二班"));
        //4.展示学生信息(遍历集合)
        System.out.println("学号\t\t\t姓名\t\t年龄\t\t班级");
        for (int i = 0; i < stuSystem.size(); i++) {
            System.out.println(stuSystem.get(i).getId()+"\t"+stuSystem.get(i).getName()
            +"\t"+stuSystem.get(i).getAge()+"\t\t"+stuSystem.get(i).getClassroom());
        }
        //5.定义一个可以按照学号找到对应对象的方法

        //6.使用 所写的方法找到想要的对象 并遍历它的信息
        while (true) {
            Student s = toStudentById(stuSystem);
            if(s == null){
                System.out.println("对不起,您输入的学号不存在 ");
            }else{
                System.out.println("您查询的学生信息如下");
                System.out.println("学号\t\t\t姓名\t\t年龄\t\t班级");
                System.out.println(s.getId()+"\t"+s.getName() +"\t"+s.getAge()+"\t\t"+s.getClassroom());
            }
        }
    }

    /**
     * 根据学生的学号查询学生对象并返回
     * @param stuSystem  存储全部学生对象的集合
     * @return  学生对象 | null
     */
    //定义一个可以按照学号找到对应对象的方法
    public static Student toStudentById(ArrayList<Student> stuSystem){
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入您要查找的学号");
        int id = scanner.nextInt();
        for (int i = 0; i < stuSystem.size(); i++) {
            if(stuSystem.get(i).getId() == id){
                //则这个学生对象就是我们要找的  返回它
                return stuSystem.get(i);
            }
        }
        //查无此人
        return null;
    }
}

第九天 加油
坚持最难!1

posted @   划水安逸  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示