java键值对的使用(java中什么接口以键值对的方式存储对象)

发布时间:2022-11-16

本文目录一览:

  1. 如何在java中取map中的键值 的两种方法
  2. java 键值对?
  3. java 怎么样获取Map中第几个键值对
  4. 请问java中的键值对问题
  5. java:我想使用键值对,并且键或者值可以重复,在java中找得到对应的类吗?

如何在java中取map中的键值 的两种方法

Map<String, String> map = new HashMap<>();
map.put("1", "value1");
map.put("2", "value2");
map.put("3", "value3");

第一种:普遍使用,二次取值

System.out.println("通过Map.keySet遍历key和value:");
for (String key : map.keySet()) {
    System.out.println("key= "+ key + " and value= " + map.get(key));
}

第二种

System.out.println("通过Map.entrySet使用iterator遍历key和value:");
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
    Map.Entry<String, String> entry = it.next();
    System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}

第三种:推荐,尤其是容量大时

System.out.println("通过Map.entrySet遍历key和value");
for (Map.Entry<String, String> entry : map.entrySet()) {
    System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}

第四种

System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
for (String v : map.values()) {
    System.out.println("value= " + v);
}

java 键值对?

Map<Integer, Map.Entry<Integer, Integer>> map = new HashMap<>();
map.put(1, new AbstractMap.SimpleEntry<>(2, 3));

java 怎么样获取Map中第几个键值对

public static void main(String[] args) {
    Map<String, String> map = new HashMap<>();
    map.put("key1", "value1");
    map.put("key2", "value2");
    map.put("key3", "value3");
    Set<String> keySet = map.keySet();
    int i = map.size() - 1;
    Map<Integer, String> mapKey = new HashMap<>();
    Map<Integer, String> mapValue = new HashMap<>();
    for (Map.Entry<String, String> entry : map.entrySet()) {
        // 将原来MAP的VALUE放入新的MAP的VALUE里面
        mapKey.put(i, entry.getValue());
        // 将原来MAP的KEY放入新的MAP的VALUE 里面
        mapValue.put(i, entry.getKey());
        i--;
    }
    // 打印KEY值
    System.out.println(mapKey.get(2));
    // 打印VALUE值
    System.out.println(mapValue.get(0));
}

扩展资料:

java键值对的使用 Map集合没有继承Collection接口,但是其提供了key到value的映射。每一个key不能有相同,每个key只能映射一个value值。 下面通过一个程序来说明键值对的使用,下面是一个基本的键值对应用程序:

package Test;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class KeyValue {
    public static void main(String[] args) {
        Map<String, String> map = new HashMap<>();
        map.put("01", "张三");
        map.put("02", "王五");
        Set<String> set = map.keySet();
        Iterator<String> it = set.iterator();
        System.out.println("key中集合元素:");
        while (it.hasNext()) {
            System.out.println(it.next());
        }
        Collection<String> coll = map.values();
        it = coll.iterator();
        System.out.println("value中集合元素:");
        while (it.hasNext()) {
            System.out.println(it.next());
        }
    }
}

输出结果如图所示:

请问java中的键值对问题

任何Object都可以作为key及value,不过一般key选用简单的字符串或者数值即可,而value需根据具体业务需求放置相应的值或对象。

java:我想使用键值对,并且键或者值可以重复,在java中找得到对应的类吗?

没有。因为意义就是键是独立的、唯一的。 我认为你可以从其他业务方面下手。数据可用实体保存。这样放MapList都是很容易取出键相同的数据。 好吧。下面的哥们的确行。可以。不过必须new的形式。不然也会覆盖。