java学习3创建学生属性:学号、姓名、电话 完全实现对象集合的增删改查。,控制台来做
首先创建一个student类其中包括get,set与构造函数
/** * */ package work2; /** * @author Administrator * */ public final class Student { private String id; private int tell; private String name; /** * 初始化数据 */ public Student(String id,int tell,String name) {//构造函数赋初值 // TODO 自动生成的构造函数存根 this.id=id; this.tell=tell; this.name=name; } /** * * @param 传入数据set与get方法,数据的安全性,给了方法自己传入数据 */ public void setId(String id){ this.id=id; } public void setTell(int tell){ this.tell=tell; } public void setName(String name){ this.name=name; } public String getId(){ return id; } public int geiTell(){ return tell; } public String geiName(){ return name; } } 在创建一个一个MyClass类包括增删改查方法 package work2; import java.util.ArrayList; import java.util.List; public class MyClass { // 建立一个List容器装数据 private List<Student> stuList; public MyClass(){ stuList=new ArrayList<Student>();//建立一个stu对象 } public boolean isHere(Student stu){//封装判断一个数的方法 boolean is=false; for(Student s:stuList){//遍历for each if(stu.getId().equals(s.getId()))//容器里传入的对象数据=遍历的对象数据,则存在,否则不存在 is=true; } return is;//返回判断 } public boolean add(Student stu){ //首先判断是否存在 boolean is=this.isHere(stu); if(!is){ stuList.add(stu); } return !is; } public boolean upDate(Student stu){ //首先判断是否存在 boolean is=this.isHere(stu); for(Student s:stuList){ if(stu.getId().equals(s.getId())){ stuList.remove(s); stuList.add(stu); } } return is; } public boolean delete(String id){ boolean isSuc=false; for(Student s:stuList){ if(id.equals(s.getId())){ stuList.remove(s); isSuc=true; } } return isSuc; } public List<Student> query(){ return this.stuList; } } 最后创建一个MainFrame类运用model view controller 通过调用MyClass中的方法实现 package work2; import java.util.List; import java.util.Scanner; import javax.swing.plaf.synth.SynthStyle; public class MainFrame { public MyClass mc;//对象 private Scanner sc=new Scanner(System.in); public MainFrame() { // TODO 自动生成的构造函数存根 mc=new MyClass(); } public Student getInfo(){//带参数的构造函数 System.out.println("请输入学号"); String id=sc.next(); System.out.println("请输入电话"); int tell=sc.nextInt(); System.out.println("请输入姓名"); String name=sc.next(); Student stu=new Student(id, tell, name);//数据封装成对象, return stu; } public void add(){ Student stu=this.getInfo();//从控制台接收数据 boolean is=mc.add(stu); if(is){ System.err.println("添加成功"); } else System.out.println("添加失败"); } public void update(){ Student stu=this.getInfo(); boolean is=mc.upDate(stu); if(is){ System.out.println("修改·成功"); }else System.out.println("修改失败"); } public void delete(){ System.out.println("请输入要删除学生的学号"); String id=sc.next(); boolean is=mc.delete(id); if(is){ System.out.println("删除成功"); }else System.out.println("删除失败,学生不存在"); } public void quere(){ List<Student> stulist=mc.query(); for(Student s:stulist){ System.out.println("ID:"+s.getId()+"tell:"+s.geiTell()+"name:"+s.geiName()); } } public void start(){ boolean is=true; while(is){ System.out.println("输入你要操作的选项:"); System.out.println("1,增加"); System.out.println("2.删除"); System.out.println("3,修改"); System.out.println("4,查找"); System.out.println("5,退出"); int option=sc.nextInt(); switch (option) { case 1: System.out.println("开始添加"); add(); break; case 2: System.out.println("开始修改"); update(); break; case 3: System.out.println("开始查询"); quere(); break; case 4: System.out.println("开始删除"); delete(); break; case 5: is=false; System.out.println("欢迎使用,下次再见!!"); } } } public static void main(String[] args) { MainFrame mf=new MainFrame(); mf.start(); } }