map做遍历string key和已知的string info相同 则desc赋值为map的value
时间: 2025-01-25 08:12:46 浏览: 28
在编程中,如果你有一个`Map<String, String>`,并且想要遍历这个`Map`,将其中`key`与已知的`string info`相同的`value`赋值给`desc`,可以使用以下方法:
假设我们有一个`Map<String, String>`,如下所示:
```java
Map<String, String> map = new HashMap<>();
map.put("key1", "value1");
map.put("key2", "value2");
map.put("key3", "value3");
```
并且我们有一个已知的`string info`:
```java
String info = "key2";
```
我们的目标是将`map`中`key`等于`info`的`value`赋值给`desc`。可以这样做:
```java
String desc = null;
for (Map.Entry<String, String> entry : map.entrySet()) {
if (entry.getKey().equals(info)) {
desc = entry.getValue();
break; // 找到后可以退出循环
}
}
System.out.println("Desc: " + desc);
```
或者使用Java 8及以上版本的`forEach`方法:
```java
String desc = null;
map.forEach((key, value) -> {
if (key.equals(info)) {
desc = value;
}
});
System.out.println("Desc: " + desc);
```
更简洁的方法是使用`Map`的`get`方法:
```java
String desc = map.get(info);
System.out.println("Desc: " + desc);
```
这种方法更简洁,但需要注意的是,如果`key`不存在,`get`方法会返回`null`。
阅读全文