我們做一個QQ分層的一塊:那就是給好友列表分組。
我們知道:我們的QQ里面分了好幾個組:好友,同學,家人,陌生人,黑名單等等,那么這是怎么實現的呢?
首先,我們需要有一群好友(好友類),他們有各種各樣的屬性(QQ號,姓名,簽名,在線狀態),非常多,十分龐雜;這個時候我們需要給他們分組了(組類),每個組里面也有這個組的屬性(組號,組名,管理該組成員的列表集合),每個組都有基本功能就是增加該組的成員和刪除該組的成員。
最后通過測試類,我們看看管理分組的運行情況。

下面附代碼:
好友類:
public class Buddy {

    
private int qq;
    
private String name;
    
private String sign;
    
private int status;
    
public Buddy(int qq,String name,String sign,int status){
        
this.setQq(qq);
        
this.setName(name);
        
this.setSign(sign);
        
this.setStatus(status);
    }

    
public int getQq() {
        
return qq;
    }

    
public void setQq(int qq) {
        
this.qq = qq;
    }

    
public String getName() {
        
return name;
    }

    
public void setName(String name) {
        
this.name = name;
    }

    
public String getSign() {
        
return sign;
    }

    
public void setSign(String sign) {
        
this.sign = sign;
    }

    
public int getStatus() {
        
return status;
    }

    
public void setStatus(int status) {
        
this.status = status;
    }

    
    
public String toString(){
        
if(this.getStatus()==1){
            
return "QQ號:"+this.getQq()+"  好友名:"+this.getName()+"    好友簽名:"+this.getSign()+"    好友狀態:  在線";
        }

        
else{
            
return "QQ號:"+this.getQq()+"  好友名:"+this.getName()+"    好友簽名:"+this.getSign()+"    好友狀態:  離線";
        }

        
    }

    
}


組類:
public class Group {
    
private int id;
    
private String name;
    
private List<Buddy> buddyList;
    
public Group(int id,String name){
        
this.setId(id);
        
this.setName(name);
        
this.setBuddyList(new ArrayList<Buddy>());
    }

    
public int getId() {
        
return id;
    }

    
public void setId(int id) {
        
this.id = id;
    }

    
public String getName() {
        
return name;
    }

    
public void setName(String name) {
        
this.name = name;
    }

    
public List<Buddy> getBuddyList() {
        
return buddyList;
    }

    
public void setBuddyList(List<Buddy> buddyList) {
        
this.buddyList = buddyList;
    }

    
    
public void addBuddy(Buddy buddy){
        
this.buddyList.add(buddy);
    }

    
public void removeBuddy(Buddy buddy){
        
this.buddyList.remove(buddy);
    }


}



測試類:
public class Test {

    
public static void main(String[] args) {
        List
<Group> grouplist = new ArrayList<Group>();
        
        Group friend 
= new Group(1,"好友表");
        Group family 
= new Group(2,"家人表");
        
        grouplist.add(friend);
        grouplist.add(family);
        
        Buddy b1 
= new Buddy(001,"張三","我很好啊",0);
        Buddy b2 
= new Buddy(002,"李四","今天吃飽了",1);
        Buddy b3 
= new Buddy(003,"王五","吃我煎餅果子",1);
        Buddy b4 
= new Buddy(004,"趙六","我只吃了臭豆腐",0);
        Buddy b5 
= new Buddy(001,"爸爸","好好干",1);
        Buddy b6 
= new Buddy(002,"媽媽","今天做的菜好吃",0);
        Buddy b7 
= new Buddy(003,"表姐","孩子1歲了",1);
        Buddy b8 
= new Buddy(004,"姑姑","老太太今天高興",0);
        
        friend.addBuddy(b1);
        friend.addBuddy(b2);
        friend.addBuddy(b3);
        friend.addBuddy(b4);
        
        family.addBuddy(b5);
        family.addBuddy(b6);
        family.addBuddy(b7);
        family.addBuddy(b8);
        
        System.out.println(friend.getName()
+"成員有:");
        Iterator
<Buddy> iter = friend.getBuddyList().iterator();
        
while(iter.hasNext()){
            Buddy b 
= iter.next();
            System.out.println(b);
        }

        
        System.out.println(family.getName()
+"成員有:");
        Iterator
<Buddy> iter1 = family.getBuddyList().iterator();
        
while(iter1.hasNext()){
            Buddy b 
= iter1.next();
            System.out.println(b);
        }


    }


}



看一下運行結果: