首页 >>  正文

java+map根据key排序

来源:baiyundou.net   日期:2024-09-21

【强引用类】

一组key,value;key值不能重复且只对应一个value值

实现类:HashMap、HashTable、TreeMap(有序)

HashTable的key和value不能为null,否则报错

TreeMap的key不能为null,value可以为null

【弱引用类】

WeakHashMap,不使用会被gc掉

IdentityHashMap的key可以重复,堆中地址不同

Map类:

public interface Map

方法:

int size();

boolean isEmpty();

boolean containsKey(Object key);

boolean containsValue(Object value);

V get(Object key);

V put(K key, V value);

V remove(Object key);

void putAll(Map extends K, ? extends V> m);

void clear();

Set keySet();

Collection values();

Set> entrySet();

boolean equals(Object o);

int hashCode();

内部接口:

interface Entry

K getKey();

V getValue();

V setValue(V value);

boolean equals(Object o);

int hashCode();

HashMap和HashTable方法差不多,不同点:

1、继承的类不同,实现的接口相同:

①public class HashMap

extends AbstractMap

implements Map, Cloneable, Serializable

②public class Hashtable

extends Dictionary

implements Map, Cloneable, java.io.Serializable

2、Null Key & Null Value

HashMap是支持null键和null值的,而HashTable在遇到null时,会抛出NullPointerException异常

3、线程安全:

HashTable是同步的(synchronized),HashMap不是,也就是说HashTable在多线程使用的情况下,不需要做额外的同步,而HashMap则不行

","gnid":"9327200b567a7cc93","img_data":[{"flag":2,"img":[{"desc":"","height":"375","title":"","url":"https://p0.ssl.img.360kuai.com/t0166277a787799df59.jpg","width":"500"}]}],"original":0,"pat":"art_src_1,sexf,sex4,sexc,disu_label,fts0,sts0","powerby":"hbase","pub_time":1686770324000,"pure":"","rawurl":"http://zm.news.so.com/a596386fe1f9a144efac6d4ad149759d","redirect":0,"rptid":"02477b79fedab322","rss_ext":[],"s":"t","src":"馕奶奶","tag":[{"clk":"ktechnology_1:java","k":"java","u":""}],"title":"java中Map源码整理

杨娜隶2821如何对Map进行字典排序Java -
甘萍栏15793835186 ______ //根据 Map的key进行字典排序 Map<String, String> parameterMap = new HashMap<String, String>(); List<Map.Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(parameterMap.entrySet()); Collections.sort(list,new Comparator...

杨娜隶2821编写java程序,使用map统计某个数组中单词出现的次数 -
甘萍栏15793835186 ______ String[] ks = { "11", "22", "33", "44", "55", "44", "33", "11" }; Map<String, Integer> map = new HashMap<String, Integer>(); for (String s : ks) { if (map.get(s) != null) { map.put(s, map.get(s) + 1); } else { map.put(s, 1); } } System....

杨娜隶2821Java中的map会自动排序吗?是按什么排序的? -
甘萍栏15793835186 ______ 看map的种类吧,例如hashmap是按key的hash码排序的,而treemap是利用comparator 进行key的自然排序的

杨娜隶2821java 中Map的key是对象如何得到Value,也就是根据什么来比较key的值.是根据对象的equals方法吗?? -
甘萍栏15793835186 ______ 是使用equals,但是效率不高,所以系统会去比较key的hashcode.

杨娜隶2821如何用java程序将Map中的关键字全部转换成小写 -
甘萍栏15793835186 ______ 1、对map进行遍历. 2、对遍历到的关键字进行小写转换. 1、对map进行遍历. 可以用keySet()获取到所有key值然后根据key去取,或者直接用map 的iterator()取得map.Entry. 2、对遍历到的关键字进行小写转换.使用String的...

杨娜隶2821java中如何在Map中追加Key - value对 -
甘萍栏15793835186 ______ V put(K key, V value) 将指定的值与此映射中的指定键关联(可选操作). 参数:key - 与指定值关联的键 value - 与指定键关联的值

杨娜隶2821java里面的map是什么? -
甘萍栏15793835186 ______ Map 是java提供的一个通用的元素存储方法,为一种集合类.Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值.从概念上而言,您可以将 List 看作是具有数值键的 Map.Java 核心类中有很多预定义的 Map 类.比如我们想存储一组学生学号和成绩的信息,可以使用Map<int,int>这种结构,存入(20110101,91),(20110103,86)等信息. 参考:http://www.oracle.com/technetwork/cn/articles/maps1-100947-zhs.html

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024