2014-02-26 63 views
0

例如:映射表的ArrayList不同大小

ArrayList1 = {userid1, userid2, userid1, userid4, userid1, userid3, userid2, userid4, userid4, userid4, userid2}; 

ArrayList2 = {username1, username2, username3, username4}; 

映射這兩個數組所以,每當我打電話ArrayList1.get(0).getUserName(),就應該爲我提供username1

+2

請顯示您的嘗試。 – Maroun

回答

0

有一種更好的方式來做到這一點,那就是通過使用HashMap

//create your custom object which will be mapped 
public class User{ 
    public String userId; 
    public String userName; 
} 


ArrayList<String> userKeys = new ArrayList<String>(); 
HashMap<String, User> users = new HashMap<String, User>(); 

現在使用USERKEY,您可以訪問其對應的用戶數據;

實施例:

User user = users.get("yourKey"); 
0

我認爲你應該使用:

List<List<T>> = ArrayList<ArrayList<T>>; 

T爲類,你的用戶名。

1
public class User { 
     String username; 

     public User(String username) 
     { 
      this.username = username; 
     } 
     /** 
     * @return the username 
     */ 
     public String getUsername() { 
      return username; 
     } 

     /** 
     * @param username the username to set 
     */ 
     public void setUsername(String username) { 
      this.username = username; 
     } 
    } 

userid1, userid2 ...必須User對象

User userid1 = new User("username1");  
User userid2 = new User("username2"); 

初始化所有用戶對象

ArrayList1 = {userid1, userid2, userid1, userid4, userid1, userid3, userid2, userid4, userid4, userid4, userid2}; 

然後就可以調用

String username = ArrayList1.get(0).getUserName(); 

這將返回username1

+0

謝謝Vinothkumar! – asethi

+0

標記爲答案,如果你沒有問題 –

+0

但是如果列表是動態的,我不能手動添加用戶名字符串! – asethi

0

使用的HashSet代替數組列表。設置不允許重複。

+0

如果這個答案是有用的,那麼請投票積極。 – Hanan

+0

新來stackexchange,沒有代表正面投票。 – asethi