Tag: hashmap

哈希表不能用int,char

可能重复: 将原始值存储在Java集合中? 在Java中,当我使用以下内容: public HashMap<char, int> buildMap(String letters) { HashMap<char, int> checkSum = new HashMap<char, int>(); for ( int i = 0; i < letters.length(); ++i ) { checkSum.put(letters.charAt(i), primes[i]); } return checkSum; } 我收到与不恰当types相关的错误。 我解决了我的问题,分别使用Character和Integer来代替char和int。 但是,我无法弄清楚为什么HashMap无法处理原始数据types。

为什么Sun Java中的HashSet实现使用HashMap作为后台?

查看Java 6的源代码, HashSet<E>实际上是使用HashMap<E,Object> ,在Set的每个条目上都使用了虚拟对象实例。 我认为这是浪费4个字节(在32位机器上)的大小的条目本身。 但是,为什么仍然使用? 除了维护代码更容易之外,是否有任何理由使用它?

在CoffeeScript中,如何将variables用作散列中的键?

例如: 所以: foo = "asdf" {foo: "bar"} eval foo # how do I get {"asdf": "bar"} ? # this will throw parse error: {(eval foo): "bar"} 这是一个简单的语法问题:我如何让CoffeeScriptdynamic地构造一个哈希,而不是手工完成?

如何在Java中使用foreach循环来遍历HashMap中的值?

我想编译下面的代码: private String dataToString(){ Map data = (HashMap<MyClass.Key, String>) getData(); String toString = ""; for( MyClass.Key key: data.keySet() ){ toString += key.toString() + ": " + data.get( key ); return toString; } 我得到一个错误的行,说: 不兼容的types 发现:java.lang.Object 必需:MyClass.Key getData()方法返回一个Object (但在这种情况下,返回的Object具有HashMap结构)。 MyClass.Key是我为我的应用程序创build的枚举(在另一个类文件MyClass )。 当我在MyClass.java创build一个具有相同结构的foreach循环时,我没有遇到这个问题。 我究竟做错了什么?

哈希映射和空值?

你如何将空值传入HashMap? 以下代码片段适用于填充选项: HashMap<String, String> options = new HashMap<String, String>(); options.put("name", "value"); Person person = sample.searchPerson(options); System.out.println(Person.getResult().get(o).get(Id)); 所以问题是什么必须input到选项和或方法来传递一个空值? 我尝试了下面的代码没有任何成功: options.put(null, null); Person person = sample.searchPerson(null); options.put(" ", " "); Person person = sample.searchPerson(null); options.put("name", " "); Person person = sample.searchPerson(null); options.put(); Person person = sample.searchPerson();

用于在HashMap中添加List的快捷方式

我经常需要获取对象列表,并根据对象中包含的值将它们分组到一个Map中。 例如。 按国家列出用户和组。 我的代码通常是这样的: Map<String, List<User>> usersByCountry = new HashMap<String, List<User>>(); for(User user : listOfUsers) { if(usersByCountry.containsKey(user.getCountry())) { //Add to existing list usersByCountry.get(user.getCountry()).add(user); } else { //Create new list List<User> users = new ArrayList<User>(1); users.add(user); usersByCountry.put(user.getCountry(), users); } } 然而,我不禁认为这是尴尬的,有些大师有更好的方法。 到目前为止,我能看到的最接近的是来自Google Collections的MultiMap 。 有没有标准的方法? 谢谢!

HashMap – 获取First Key的值

下面是包含在HashMap中的值 statusName {Active=33, Renewals Completed=3, Application=15} Java代码获取第一个密钥(即活动) Object myKey = statusName.keySet().toArray()[0]; 我们如何收集第一个关键的“价值”(即33),我想将“关键”和“价值”都存储在单独的variables。

hash_map和unordered_map的区别?

我最近发现在c ++中实现哈希映射将被称为unordered_map。 当我查找他们为什么不只是使用hash_map时,我发现显然存在着与unordered_map解决的hash_map实现相关的兼容性问题( http://en.wikipedia.org/wiki/Unordered_map_%28C%2B%2B% 29 )。 维基页面没有提供更多的信息,所以我想知道是否有人知道一些与hash_map的问题,unordered_map解决

java中HashMap.containsKey()的时间复杂度是多less?

我需要知道:java中HashMap.containsKey()的时间复杂度是多less?

从hashmap中获取基于JSTL密钥的值

我想获得基于密钥的HashMap的值。 HashMap<String, ArrayList<String>> map = new HashMap<String, ArrayList<String>>(); ArrayList<String> arrayList = new ArrayList<String>(); map.put("key", arrayList); request.setAttribute("key", map); 我做的是 <c:forEach var="map" items="${requestScope.key}"> <c:forEach var="hash" items="${map.value}"> <option><c:out value="${hash}"/></option> </c:forEach> </c:forEach> 但它似乎是打印的一切,我想要做的是得到的价值取决于关键如: hash.key什么的 更新: 我做了这样的事情,但它仍然无法正常工作 <c:forEach var="map" items="${requestScope.key}"> <c:forEach var="hash" items="${map['key']}"> <option><c:out value="${hash}"/></option> </c:forEach> </c:forEach> 而Property 'External' not found on type java.util.HashMap$Entry StackTrace: Property 'External' not found on […]