面向对象实现增删改查
首先是一段自我介绍
大家好,我是一名大二学生,即将步入大三,这是我的第一次发博客,也没有什么经验,那就分享一下自己的代码吧未来的程序员嘛,早晚都要学会写博客,第一篇先试试手,望大家喜欢!
代码如下:
// An highlighted block
/**
* 学生管理类
*
*/
public class StudentManager {
Student [] stus = new Student[30]; //固定班级有30个学生
static int currCount =0; //当前学生数
/**
* 添加学生到数组
* @param s
*/
public void add(Student s){
stus[currCount] = s ; //将传入过来的学生存入数组
currCount++;
}
/**
* 根据学号查询 学生
* 循环 数组 , 通过循环拿到 对象 的 id 和传入的id比较 ,如果一致 ,那么打印当前 对象 ,否则查询为空
* @param id
*/
public void findById(String id){
for (int i = 0; i <currCount ; i++) {
if(stus[i].getId().equals(id)){
System.out.println("根据id查出的信息");
System.out.println(stus[i]);
}
}
}
// 删除
public void delete(String id){
Student [] newstus = new Student[stus.length]; //创建一个新的数组
int sum=currCoun
int j=0;//新数组的下标
for (int i = 0; i <currCount; i++) {
if (id!=stus[i].getId()){ //判断不是删除的数据就把这个赋值给新数组
newstus[j]=stus[i];
j++;
}else { //是的话就删除,总人数--
sum--;
}
}
stus=newstus; //把新数组重新赋值给老数组
currCount=sum;
}
//更新
public void replace(String id,Student student){
for (int i = 0; i <currCount; i++) {
if(stus[i].getId().equals(id)){
stus[i]=student;
}
}
}
/**
* 查询所有
*/
public void findAll(){
for (int i = 0; i < currCount; i++) {
System.out.println(stus[i]);
}
}
public static void main(String[] args) {
StudentManager sm = new StudentManager();
Student s1 = new Student("01","张三",20);
Student s2 = new Student("02","李四",22);
sm.add(s1);
sm.add(s2);
System.out.println("添加成功的信息");
sm.findAll();
sm.findById("01");
System.out.println("删除后的信息");
sm.delete("02");
sm.findAll();
System.out.println("更新后的信息");
Student student1=new Student("01","小波",20);
sm.replace("01",student1);
sm.findAll();
}
}
结语:
对比了其他的贴,代码感觉算是比较简化的了,希望对大家有帮助,另外,来到这里最大的目的还是结交新的朋友,共同学习进步.我们一起加油!
下课啦下课啦 程序员永不加班!👨💻