您的位置:首页 > 其它

存储对象的数组

2015-07-25 11:02 429 查看


public class Person {
private String lastName;
private String firstName;
private int age;
public Person(String last,String first,int a){
lastName=last;
firstName=first;
age=a;
}
public void displayPerson(){
System.out.print("Last name:"+lastName+",First name:"+firstName+",Age:"+age);
}
public String getLast(){
return lastName;
}
}

public class ClassDataArray {
private Person[] a;
private int nElems;
public ClassDataArray(int max){
a=new Person[max];
nElems=0;
}
//按姓查询
public Person find(String searchName){
int i;
for(i=0;i<nElems;i++){
if(a[i].getLast().equals(searchName)) break;
}
if(i==nElems) return null;
else return a[i];
}
public void insert(String last,String first,int age){
a[nElems]=new Person(last, first, age);
nElems++;
}
public boolean delete(String searchName){
int i;
for(i=0;i<nElems;i++)
if(a[i].getLast().equals(searchName)) break;
if(i==nElems) return false;
else{
for(int k=i;k<nElems;k++){
a[k]=a[k+1];
}
nElems--;
return true;
}
}
public void displayA(){
for(int i=0;i<nElems;i++)
a[i].displayPerson();
}
}


主程序
public class ClassDataApp {
public static void main(String[] args){
int maxSize=100;
ClassDataArray array;
array=new ClassDataArray(maxSize);
array.insert("a", "a", 12);
array.insert("b", "b", 32);
array.insert("c", "c", 43);
array.insert("d", "d", 13);
array.insert("e", "e", 33);
array.displayA();
String seachKey="a";
Person found;
found=array.find(seachKey);
if(found!=null){
System.out.println("Found");
found.displayPerson();
}
else{
System.out.println("Can`t find "+seachKey);
}
System.out.println("Delete a and b");
array.delete("a");
array.delete("b");
array.displayA();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: