给大家带来一个java中的增删改查吧,首先要定义一个增删查改的对象的属性类,还有一个增删查改类,再加上一个测试类,这是基本组成.
private int sno;
private String name;
private String sex;
private int age;
private String major;
private double score;
这几个是最基本的属性然后,后面的方法Alt+Shift+s快捷方式生成get和set方法,在定义两个构造器出来,一个是空构造器再加上一个带所有属性的构造器+一个toSring重写.这就是一个属性类的所有方法.
下列是增删改查的属性
/**声明学生数组用于存储所有学生对象*/
private Student[] list;
/**声明索引,表示目前数组中元素存储的位置 */
private int index;
/**对象构造时,初始数组的容量为100*/
public StudentCRUD() {
list = new Student[100];
}
/**
* 添加学生
* @param s
*
* */
public void add(Student s) {
list[index++] = s;
}
/**
* 根据提供学号删除学生
* @param sno
*
* */
public void del(int sno) {
int i = findBySno(sno);
if(i==-1){
//一旦返回值索引为-1那么就说明学生不存在
System.out.println("未找到指定学号学生");
}else {
//逻辑删除
list[i]=null;
}
}
/**
* 根据提供的学号,将学生的学分改成指定的学分
* @param son
* @param score
*
* */
public void update(int sno,double score) {
int i = findBySno(sno);
if(i==-1) {
System.out.println("未找到该学生");
}else {
list[i].setScore(score);
System.out.println("修改成功");
}
/**
* 根据提供的学号查询学生对象
* @param sno
* @return
* */
private int findBySno(int sno) {
for(int i = 0; i<list.length;i++) {
Student s = list[i];
//当遍历的对象存在(即不为nuul)且学号等于参数值时
if(s != null && s.getSno() == sno) {
//当遍历到对象存在且不为空值,且学号等于参数那么就返回学生位置
return i;
}
}
return -1;
}
/**
* 显示所有学生信息
*
*
* */
public void showAll() {
for(int i=0;i<list.length;i++) {
Student s = list[i];
if(s!=null) {
s.xianshi();
}
}
}
/**
* 显示超过指定学分的学生
* @param score
*
* */
public void showHighScoreStus(double score) {
for(int i=0;i<list.length;i++) {
Student s = list[i];
if(s!=null&&s.getScore()>=score) {
//显示学生详情
s.xianshi();
}
}
这些大致就是增删改查的所有方法.后面就是一个测试类需要完成了
StudentCRUD a = new StudentCRUD();
a.add(new Student(1,"李一","男",500,"吹牛",99));
a.add(new Student(2,"李二","女",499,"吹牛",69));
a.add(new Student(3,"张三","男",500,"吹牛",98));
a.add(new Student(4,"王五","男",50,"吹牛",55));
a.add(new Student(5,"李三香","女",5000,"吹牛",99));
a.add(new Student(6,"李一民","男",5000,"吹牛",59));
a.add(new Student(7,"吴四宝","女",500,"吹牛",66));
a.add(new Student(8,"南尚进","男",5010,"吹牛",100));
a.showAll();
System.out.println("---------------------------------------");
a.del(3);
a.update(1, 88.0);
a.showAll();
System.out.println("---------------------------------------");
a.showHighScoreStus(70);