java 初始化hashmap
时间: 2023-03-21 20:03:45 浏览: 136
Java中初始化HashMap的方式有多种。以下是其中几种常见的方式:
1. 使用空的构造函数创建HashMap对象,然后使用put()方法添加键值对:
```
HashMap<String, Integer> map = new HashMap<>();
map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
```
2. 使用静态代码块初始化HashMap对象:
```
static HashMap<String, Integer> map = new HashMap<>();
static {
map.put("apple", 1);
map.put("banana", 2);
map.put("orange", 3);
}
```
3. 使用双括号初始化(Double Brace Initialization):
```
HashMap<String, Integer> map = new HashMap<>() {{
put("apple", 1);
put("banana", 2);
put("orange", 3);
}};
```
其中第三种方式是使用匿名内部类的方式创建HashMap对象,并在匿名内部类的构造函数中添加键值对。但是这种方式会创建一个匿名内部类对象,会对内存和性能产生一定的影响,因此不建议使用。
相关问题
初始化hashmap
要初始化一个HashMap,你可以使用以下示例代码:
```java
HashMap<String, Integer> hashMap = new HashMap<>();
```
在上述代码中,我们创建了一个名为hashMap的HashMap对象,它的键是字符串类型,值是整数类型。你可以根据需要调整键和值的类型。
java 如何快速初始化hashmap value值都设置为0
在Java中,可以使用`HashMap`的构造函数或者流(Stream)来快速初始化一个`HashMap`,其中所有value值都被设置为0。这里提供两种方法:
1. **使用构造函数并遍历创建:**
```java
HashMap<String, Integer> hashMap = new HashMap<>();
for (int i = 0; i < someInitialCapacity; i++) { // replace someInitialCapacity with the desired size
hashMap.put("key" + i, 0);
}
```
这里假设你想有一个指定容量的`HashMap`,你可以替换`someInitialCapacity`为你想要的大小。
2. **使用流(Stream):**
```java
HashMap<String, Integer> hashMap = Stream.generate(() -> 0)
.limit(someInitialCapacity) // replace someInitialCapacity with the desired size
.collect(Collectors.toMap(key -> "key" + key, Function.identity()));
```
这个方法创建一个无限生成0的流,然后限制长度为指定的初始容量,并将其映射到键值对的形式。
阅读全文