如何用输入的字符串与hashmap中value的字符串做比较,若相同,输出该value对应的key
时间: 2023-07-16 07:14:04 浏览: 49
可以使用Java中的HashMap的entrySet()方法,遍历每个键值对,将每个value与输入的字符串比较,若相同,则输出该entry的key。以下是代码示例:
```java
HashMap<String, String> map = new HashMap<>();
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");
String input = "value2";
for (Map.Entry<String, String> entry : map.entrySet()) {
if (entry.getValue().equals(input)) {
System.out.println("The corresponding key is " + entry.getKey());
}
}
```
在上述代码中,我们首先定义了一个HashMap,包含三个键值对。接着,我们定义了一个字符串input,作为输入的字符串。然后,我们使用entrySet()方法遍历每个键值对,使用getValue()方法获取每个value,并将其与输入的字符串比较。若相同,则使用getKey()方法获取该entry的key,并输出。
相关问题
从map中过滤,如果key包含一个字符串返回key对应的value值,否则返回null
可以,可以使用Java 8中的Stream API来实现。具体代码如下所示:
```java
Map<String, String> map = new HashMap<>();
map.put("apple", "red");
map.put("banana", "yellow");
map.put("orange", "orange");
map.put("grape", "purple");
String filterKey = "an";
String filteredValue = map.entrySet().stream()
.filter(entry -> entry.getKey().contains(filterKey))
.findFirst()
.map(Map.Entry::getValue)
.orElse(null);
System.out.println(filteredValue); // 输出结果为 "yellow"
```
在上面的代码中,我们定义了一个Map,然后使用Stream API对其进行过滤。在这里,我们过滤出了第一个key包含字符串"an"的entry,然后取出它的value值。如果不存在符合条件的entry,我们将返回null。最后,我们将过滤后的value值输出到控制台上。
java中json字符串转hashmap
在Java中,可以使用第三方库(例如Jackson或Gson)将JSON字符串转换为HashMap。下面是使用Jackson库实现的示例代码:
首先,确保已经包含了Jackson相关的依赖。在Maven项目中,可以在pom.xml文件中添加以下依赖:
```xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.3</version>
</dependency>
```
然后,可以使用下面的代码将JSON字符串转换为HashMap:
```java
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.HashMap;
public class JsonToHashMapExample {
public static void main(String[] args) {
String jsonString = "{\"key1\":\"value1\",\"key2\":\"value2\",\"key3\":\"value3\"}";
try {
ObjectMapper objectMapper = new ObjectMapper();
HashMap<String, String> hashMap = objectMapper.readValue(jsonString, HashMap.class);
// 打印HashMap的内容
for (String key : hashMap.keySet()) {
System.out.println(key + ": " + hashMap.get(key));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这个例子将输出:
```
key1: value1
key2: value2
key3: value3
```