首页 > 其他分享 >第二周第五天

第二周第五天

时间:2023-07-06 11:35:00浏览次数:48  
标签:String System public 第二周 println 第五天 array out

一.主要内容

完成了一个简单的学生管理系统,有简单得学生管理系统主界面,可以完成学生信息的添加,删除,修改,查看等功能。具体实现思路是,第一步先创建一个学生类student,其中包含学生学号,姓名,年龄和地址,具体代码如下:

package xueshengguanli;

public class student {
String sid;
String name;
String age;
String address;
public student() {
}
public student( String sid,String name,String age,String address) {
this.name=name;
this.sid=sid;
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;
}
}

第二步是学生管理系统主界面的编写,通过输出语句和switch语句编写出一个可以选择功能的主界面。

第三步创建功能方法,主要方法有添加学生方法,删除学生方法,修改学生方法,查看学生方法,其中使用了集合存储学生对象。

第四步在主函数中进行调用上述四种方法

第五步完善一些可能出现的输入错误等问题,比如学号重复使用的问题,为此添加了一个判断学号是否重复方法,并且在添加学生方法中进行调用,以及在删除或者修改学生信息时,输入的学号不存在问题,删除和修改方法进行了进一步完善。

最终代码如下:

package xueshengguanli;

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

public class studentmanger {
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.退出");
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();
switch(s)
{
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);
default:
System.out.println("输入错误,请重新输入选项");
}
}
}
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 x=new student();
x.setSid(sid);
x.setName(name);
x.setAge(age);
x.setAddress(address);
array.add(x);
System.out.println("添加学生成功");
}
public static boolean isused(ArrayList<student> array,String sid)
{
boolean flag=false;
for(int i=0;i<array.size();i++)
{
student x=array.get(i);
if(x.getSid().equals(sid))
{
flag=true;
break;
}
}
return flag;
}
public static void findallstudent(ArrayList<student> array)
{
if(array.size()==0)
{
System.out.println("无信息,请添加信息之后再查看");
return;
}
System.out.println("学号\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"+s.getAddress());
}
}
public static void deletestudent(ArrayList<student> array)
{
Scanner sc=new Scanner(System.in);
System.out.println("请输入你要删除的学生的学号:");
String sid=sc.nextLine();
int c=-1;
for(int i=0;i<array.size();i++)
{
student s=array.get(i);
if(s.getSid().equals(sid))
{
c=i;
break;
}
}
if(c==-1)
{
System.out.println("该信息不存在,请重新输入");
}
else {
array.remove(c);
System.out.println("删除学生成功");
}
}
public static void updatestudent(ArrayList<student> array)
{
int c=-1;
Scanner sc=new Scanner(System.in);
System.out.println("请输入你要修改的学生学号:");
String sid=sc.nextLine();
student s=new student();
System.out.println("请输入新的学生学号:");
String sid2=sc.nextLine();
s.setSid(sid2);
System.out.println("请输入新的学生姓名:");
String name=sc.nextLine();
s.setName(name);
System.out.println("请输入新的学生年龄:");
String age=sc.nextLine();
s.setAge(age);
System.out.println("请输入新的学生地址:");
String address=sc.nextLine();
s.setAddress(address);
for(int i=0;i<array.size();i++)
{
student x=array.get(i);
if(x.getSid().equals(sid))
{
c=i;
break;
}
}
if(c==-1)
{
System.out.println("该信息不存在,请重新输入");
}
else {
array.set(c,s);
System.out.println("修改学生成功");
}
}
}

二.明天计划

读完《大道至简》第六章,构思读后感

三.今天所遇问题

刚开始使用java编程,对编译器的快捷键使用并不熟悉,编写程序比较缓慢

四.解决方法

尽快熟悉java编译器的快捷键使用,多练习java编程,提高自己编程速度。

标签:String,System,public,第二周,println,第五天,array,out
From: https://www.cnblogs.com/czfznb/p/17531689.html

相关文章

  • 自学c第五天
    每天都有提升一点得感觉属实比以前摆烂就只知道玩游戏得感觉好多了,每一天都很充实,就算是假期在家里面,也感觉每一天得时间都过得很快,感觉都还没有学到什么东西一天就结束了。今天学习了函数的递归,了解了它的基本原理,没有进行程序上实际的操作,因为我认为循环可以代替递归,而且还不会有......
  • 第二周第四天
    一.主要内容学习了stringbuilder类,并且主要学习了其中的append和reverse方法分别用于拼接和反转字符串。第一次接触到链式编程。还学习了string和stringbuiler之间的相互转换。还学习了java中的集合,并且主要学习了arraylist这个集合的创建和使用方法。arraylist底层逻辑是一个可......
  • 第五天(登录+拦截器,员工列表实现,添加员工实现,员工信息修改,删除员工实现)
    登录+拦截器员工列表实现标蓝添加员工实现员工信息修改删除员工实现404及注销......
  • 第二周第三天
    一.主要内容深入学习了string类,完成了统计字符次数,字符串的反转,字符串的拼接三个案例统计字符次数详细为统计一段字符串中出现的大写字母小写字母数字各自的次数,思路就是遍历数组,判断为哪类字符,相应字符统计数字变量递加,最后输出。代码为:packageczf;importjava.util.Scanne......
  • css第五天
    优先级的介绍特性:不同选择器具有不同的优先级,优先级高的选择器样式会覆盖优先级低选择器样式优先级公式:继承<配符选择<签选择器<类选择器<d选择<内样式important注意点:!important写在属性值的后面,分号的前面!!important不能提升继承的优先级,只要是继承优先级最低!实际开发中不......
  • 汇报 第二周第二天 JAVA方法
    今日所学:掌握定义Java方法时的语法格式及各个参数的作用;掌握方法的有无返回值的两种情况的处理方式;掌握方法的参数是值参数、引用参数或者不定长参数的使用方法;明确方法的重载和使用方法 明日计划:JAVA中的面向对象编程遇到困难:练车真坐牢......
  • 暑假Java学习第二周——第二天
    7.3键盘录入及录入求和:importjava.util.Scanner;publicclassTest{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.println("请输入第一个数字");inti1=sc.nextInt();System.out.println("请输入第二个数字");inti2=sc.nex......
  • 第二周第二天进度总结
    2023年7月3日,今天我Java基础学到了P16-标识符,Javaweb学到了P9-HTML基本标签-超链接标签。天梯赛写到了L1-025,英语每日任务已经完成,准备新增一个任务,我打算每周二周四进行写作练习。昨天读物也看了16页,今天继续保持。同时,我已经下载并安装EclipseForJavaDeveloper,并在Eclipse中......
  • 假期第二周每周总结
    本周,主要进行数据库的作业练习,主要攻克前端的界面问题,主要一个靠爬,但是也有很多的问题,解决不了,所以就利用可视化的工具进行简单实现,以下为界面:  在数据库设计的过程中,我学到了很多关于设计、规划和管理数据库的重要原则和技巧。通过实践和研究,我成功地完成了一个数据库设......
  • 汇总 第二周第一天 JAVA数组
    今日所学:JAVA数组的实现;掌握数组的定义声明和给数组赋值的三种方式,以及如何使用length属性获取数组长度,对数组的遍历,和二维数组的访问与遍历,掌握如何遍历不规则数组  明天要学的内容:JAVA方法问题:练车坐牢......