| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- package _02_复杂对象练习;
- public class StudentTest1 {
- public static void main(String[] args) {
- //1 创建出来一个学生数组
- Student[] students = new Student[3];
- students[0] = new Student(1L,"zhangsan",18);
- students[1] = new Student(2L,"lisi",18);
- students[2] = new Student(3L,"wangwu",18);
- // 根据id 查询是否存在
- boolean flag = contains(1L, students);
- if(flag){
- System.out.println("删除id存在能够正常删除");
- // 把删除元素锁在位置的值修改成Null
- removeElementById(1L,students);
- // 打印数组当中元素
- printArr(students);
- }else{
- System.out.println("删除id 在数组当中不存在");
- }
- }
- /**
- * 打印数组
- * @param students
- */
- private static void printArr(Student[] students) {
- for (Student student : students) {
- if(student!=null){
- System.out.println(student);
- }
- }
- }
- /**
- * 把id 锁在位置的值设置成null
- */
- private static void removeElementById(long id, Student[] students) {
- for (int i = 0; i < students.length; i++) {
- Student student = students[i];
- // 注意我们拿传递id 和 student 当中id 进行比较
- if(id == student.getId()){
- students[i] = null;
- }
- }
- }
- private static boolean contains(Long id, Student[] students) {
- /**
- * NullPointerException : 空指针异常
- * 原因: 使用null 去调用了属性或者是方法
- */
- for (Student student : students) {
- // 判断当前student 不为哦那个做id 比较, 因为数组当中如果没存满,可能为空null
- if(student!=null){
- if(student.getId() == id){
- return true;
- }
- }
- }
- return false;
- }
- }
|