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();
}

 

}