2017-03-09 118 views
0

我有一个使用HashMap的问题。HashMap(获取来自选定ID的值)

在散列表中,我使用userData存储数组列表。
因此,例如我存储的数据如:userId, Username, Name, Surname。现在我想创建时,我输入文本框userID,我会得到用户名作为结果,但如果userID不是在Hashmap中,我想不返回任何...

我所需要的是如何获取正确的数据用户如果输入的ID与数组中的值匹配,那么我将获得用户名作为结果。

+4

不提供文字示例。几行代码可以翻译成千言万语。 –

回答

2

我猜的不错的解决方案之一可能是: -

创建一个User类(如果你已经没有之一)

public class User { 
    private String userId; 
    private String username; 
    private String name; 
    private String surname; 
    ... 
    ... 
    //their getter and setters 
    //create a good toString() method, it will be helpful 

    } 

然后创建

类型的一个HashMap
Map<String,User> userMap = new HashMap<>(); 

然后,无论何时用户输入用户ID,请去调用userMap的get()方法。它应该给你相应的User对象,否则为null。

如果它给你null,打印一个默认消息,如No user found!!,如果用户对象返回,你一定会调用user.toString()并返回它。

+0

是的,没关系,但是如何只打印用户名,不是所有的用户数据? – Patrik

+0

这更简单,打印'user.getUsername()'而不是user.toString() –