很小的一个练习,可以参考一下啊~~~~~~

1:注意;学生类中进行多个重要方法的重写

package com.xt.homework;

public class Student {

    private String id;
private String name; public Student(String id, String name) {
this.id = id;
this.name = name;
} public Student(String id) {
this.id=id;
} 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;
} @Override
public int hashCode() {
return this.id.hashCode();
} @Override
public boolean equals(Object obj) {
if(obj instanceof Student&& this instanceof Student)
return (this.id.equals(((Student)obj).id));
return false;
} @Override
public String toString() {
return "id=" + id + ", name=" + name ;
} }

主要的类

package com.xt.homework;

import java.util.HashSet;
import java.util.Scanner;
import java.util.Set; public class Test { public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Set<Student> student = new HashSet<>();
while(true){
System.out.println("欢迎登陆学生管理系统:\n1:添加学生信息;\n2:删除学生信息;\n3:修改学生信息;\n4:查询学生信息;");
int option = scanner.nextInt();
switch (option) {
case 1:{
System.out.println("------------添加学生-------------");
System.out.println("请输入学生的学号:");
String id=scanner.next();
System.out.println("请输入学生的姓名:");
String name=scanner.next();
student.add(new Student(id,name));
System.out.println("添加成功");
break;
}
case 2:{
System.out.println("************删除学生****************");
System.out.println("请输入删除学生的学号:");
String deleteID=scanner.next();
boolean result = student.remove(new Student(deleteID));
if (result) {
System.out.println("删除成功");
} else {
System.out.println("没有id为"+deleteID+"的学生!");
}
break;
}
case 3:{
System.out.println("################修改学生信息####################");
System.out.println("请输入需要修改的id号:");
String updateID = scanner.next();
System.out.println("请输入新的姓名:");
String name=scanner.next();
boolean tag = false;
for (Student student2 : student) {
if(student2.getId().equals(updateID)) {
student.remove(student2);
student.add(new Student(updateID,name));
System.out.println("修改成功");
tag=true;
break;
}
}
if(!tag) {
System.out.println("修改失败!!");
}
break;
}
case 4:{
System.out.println("@@@@@@@@@@@@@@@@@@查询学生信息@@@@@@@@@@@@@@@@@@@@@@@");
System.out.println("请输入需要查询学生的id:");
String selectID = scanner.next();
boolean tag = false;
for (Student stu : student) {
if(stu.getId().equals(selectID)) {
System.out.println(stu);
tag=true;
System.out.println("查询成功!!!");
break;
}
}
if(!tag) {
System.out.println("没有id为"+selectID+"的学生!");
}
break;
}
default:
System.out.println("没有该操作");;
}
}
}
}

非常简约学生管理系统——HashSet进行编写的更多相关文章

  1. jsp学习之基于mvc学生管理系统的编写

    mvc开发模式:分别是 model层 view层 Control层 在学生管理系统中,model层有学生实体类,数据访问的dao层,view层主要是用于显示信息的界面,Control层主要是servl ...

  2. C程序范例(2)——学生管理系统”链表“实现

    1.对于学生管理系统,能够实现的方法有许多,但是今天我们用链表的方法来实现.虽然初学者很可能看不懂,但是不要紧,这是要在整体的系统的学习完C语言之后,我才编写出的程序.所以大家不必要担心.在这里与大家 ...

  3. 学生管理系统(SSM简易版)总结

    之前用 Servlet + JSP 实现了一个简易版的学生管理系统,在学习了 SSM 框架之后,我们来对之前写过的项目重构一下! 技术准备 为了完成这个项目,需要掌握如下技术: Java 基础知识 前 ...

  4. 05_学生管理系统,xml读写,布局的综合应用

     最终要做的项目目标: 2.编写Android清单文件AndroidManifest.xml <?xml version="1.0" encoding="utf ...

  5. 学生管理系统(springMVC)

    <Java Web编程>课程设计                                                                               ...

  6. Java 简化版学生管理系统(IO版)

    Student management system   学生管理系统IO版 详细知识点可参考一下几篇文章 常用API Java 之ArrayList集合及应用 Java 之IO流及应用 Compreh ...

  7. java课程设计 学生管理系统

    学生成绩管理系统 可实现功能 学生管理系统 查询学生信息:姓名.学号.性别.出生年月日.(学号自动生成且唯一) 查询学生成绩:每个人都有数学.Java与体育与选修课 查询学生课程 进行公选课选课 教师 ...

  8. java学生管理系统

    student类 package cn.itheima.Manag; /** * *标准类 * **/public class Student { //学号 private String id; // ...

  9. Java学生管理系统(IO版)

    图解: cade: student.java /* * 这是我的学生类 */ public class Student { //学号 private String id; //姓名 private S ...

随机推荐

  1. Linux命令(用户管理、组和时间管理)

    用户管理    Linux系统是一个多用用户的系统 用户分为三类:      超级用户(root)用户的id是0     伪用户     用户的id是1----499,虽然存在,但不能被登录      ...

  2. Mybatis传递多个参数进行SQL查询的用法

    当只向xxxMapper.xml文件中传递一个参数时,可以简单的用“_parameter”来接收xxxMapper.java传递进来的参数,并代入查询. 但是,如果在xxxMapper.java文件中 ...

  3. css background之设置图片为背景技巧

    原文 Background是什么意思,翻译过来有背景意思.同样在css里面作为css属性一成员同样是有背景意思,并且是设置背景图片.背景颜色.背景图片截取等样式. 首先先来看看background有那 ...

  4. 刘汝佳dicnic模板

    #include<iostream> #include<cstdio> #include<algorithm> #include<vector> #in ...

  5. How to get full path of StreamWriter

     How to get full path of StreamWriter   In my version of the framework, this seems to work: string f ...

  6. 一个简易的PHP读取CSV文件的方法

    1. 思路:先打开文件,读取出文件有多少行,然后逐行读取数据放入一个数组中 public function read_csv_lines($csv_file = '', $lines = 0, $of ...

  7. SpringCloud(三)之Feign实现负载均衡的使用

    一 点睛 Feign是Netflix开发的声明式.模板化的HTTP客户端, Feign可以帮助我们更快捷.优雅地调用HTTP API. 在Spring Cloud中,使用Feign非常简单——创建一个 ...

  8. leetcode 日常清单

    a:excellent几乎一次ac或只有点小bug很快解决:半年后再重刷: b:经过艰难的debug和磕磕绊绊或者看了小提示才刷出来: c:经过艰难的debug没做出来,看答案刷的: 艾宾浩斯遗忘曲线 ...

  9. Fragment 和Activity的数据传递实例代码

    package com.example.fragment; import android.os.Bundle; import android.support.v4.app.FragmentActivi ...

  10. centos6里面装zabbix(二)

    第一步: 如果这一步的时候有错误,那么修改php.ini(/usr/local/php/etc/这个目录下),然后重启php这个配置文件. 第二步: 第三步: 第四步: 第五步: 第六步:做到这一步的 ...