数据结构回顾版-java数据结构-存储对象
2009-02-15 20:37
357 查看
创建
package ch01; public class Person { // 用户姓名 private String name; // 用户年龄 private int age; // 用户性别 private String sex; public Person(String name, int age, String sex) { super(); this.name = name; this.age = age; this.sex = sex; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public void display() { System.out.print("姓名:" + this.name); System.out.print(".年龄:" + this.age); System.out.print(".性别:" + this.sex); System.out.println(); } }
package ch01; public class PersonArray { // 数组 private Person[] arr; // 数组中有效数据的大小 private int elems; //默认构造函数 public PersonArray() { arr = new Person[50]; } public PersonArray(int max) { arr = new Person[max]; } // 插入数据 public void insert(Person person) { arr[elems] = person; elems++; } // 显示数据 public void display() { for (int i = 0; i < elems; i++) { arr[i].display(); } System.out.println(); } // 查找数据 public int find(String name) { int i; for (i = 0; i < elems; i++) { if (name.equals(arr[i].getName())) { break; } } if (i == arr.length) { return -1; } else { return i; } } // 删除数据 public void delete(Person person) { if (find(person.getName()) == -1) { System.out.println("查找不到指定数据,删除失败"); } else { for(int i = find(person.getName());i < elems; i++) { arr[i] = arr[i + 1]; } } elems--; } // 删除数据 public void delete(String name) { if (find(name) == -1) { System.out.println("查找不到指定数据,删除失败"); } else { for(int i = find(name);i < elems; i++) { arr[i] = arr[i + 1]; } } elems--; } // 修改数据 public void change(Person oldPerson, Person newPerson) { if(find(oldPerson.getName()) == -1) { System.out.println("查找不到指定数据,修改失败"); } else { arr[find(oldPerson.getName())] = newPerson; } } }
package ch01; public class TestPersonArray { public static void main(String[] args) { PersonArray pa = new PersonArray(); //创建对象 Person p1 = new Person("张三",20,"男"); Person p2 = new Person("李四",21,"男"); Person p3 = new Person("王五",22,"女"); Person p4 = new Person("赵六",23,"男"); Person p5 = new Person("李斯",24,"男"); // 插入操作 pa.insert(p1); pa.insert(p2); pa.insert(p3); pa.insert(p4); pa.insert(p5); pa.display(); // 删除操作 pa.delete(p4); pa.display(); pa.delete("李斯"); pa.display(); //修改操作 Person newPerson = new Person("帅哥",40,"男"); pa.change(p1, newPerson); pa.display(); } }
相关文章推荐
- Java对象存储
- Java中HashSet存储对象判断是否重复原理分析
- 探索并发编程(三)------Java存储模型和共享对象
- java对象的存储
- Java基础知识强化之集合框架笔记06:Collection集合存储自定义对象并遍历的案例
- Java基础知识强化之集合框架笔记13:Collection集合存储学生对象并遍历
- java 数据结构和存储方式
- java 集合框架-ArrayList存储不重复的自定义对象
- (二十七)Java组件类Triple、MutableTriple、ImmutableTriple存储三个对象类详解
- (二十七)Java组件类Triple、MutableTriple、ImmutableTriple存储三个对象类详解
- (二十七)Java组件类Triple、MutableTriple、ImmutableTriple存储三个对象类详解
- 利用数据库的存储过程生成java的formbean对象
- JVM 内存分配模型概念和java中各种对象的存储
- 深入Java对象及元素的存储区域
- java对象内存存储
- Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式)
- Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式)
- 深入解析Java对象的hashCode和hashCode在HashMap的底层数据结构的应用
- 对象容器 - Java对数据结构的封装 - List, ArrayList, LinkedList, Set, SortedSet, HashSet, Map, TreeMap
- C#和JAVA对象在内存中的存储