java什么情况使用map java中我想请问什么时候才考虑用Map
大家好,今天来为大家分享java什么情况使用map的一些知识点,和java中我想请问什么时候才考虑用Map的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
java中Map类有什么作用,具体怎么用呢
Map以按键/数值对的形式存储数据,和数组非常相似,在数组中存在的索引,它们本身也是对象。
Map的接口
Map---实现Map
Map.Entry--Map的内部类,描述Map中的按键/数值对。
SortedMap---扩展Map,使按键保持升序排列
使用时,一般是选择Map的子类,而不直接用Map类。
以HashMap为例。
publicstaticvoidmain(Stringargs[])
{
HashMaphashmap=newHashMap();
hashmap.put("Item0","Value0");//往map中放入key是Item0,value是Value0的一个元素
hashmap.put("Item1","Value1");//往map中放入key是Item1,value是Value1的一个元素
}
java中list、set和map 在什么场景下使用
list列表
set集合
map映射
从词义上可以看出来它们的大概作用:
列表是顺序存放对象的,可以有相同的对象,通过索引存取;
集合是无序存放对象的,其中不能有重复的对象(唯一的,回忆高中时候数学中学习的集合特性),集合没有索引,只能遍历次存取;
映射,存放的是键与值的映射,其中键是唯一的(不能有重复对象),而值可以有重复的对象,存的时候,需要指定键和对应的值,取的时候可以根据键名取到值,也可以遍历。
至于在什么时候使用,这个是要因地制宜的。
列表,在能直接使用数组的时候,就有使用列表,如一个班的学生的成绩,成绩是可以重复的;
集合,一般用于存放无序的(指顺序不重要)不能重复的对象,如一个班的学生的学号,学号是不能重复的;
映射,用于存放具有对应关系的键值对,如一个班的学生的学号与姓名的映射,每个学号对应了一个学生的姓名,学号不能重复,但是姓名可能会重复;
java集合 什么情况下分别使用map ,set, list
这是要看你的需求的当你有一些内容要添加到一个数组里面,但是你前提不知道他有多少个(而可能有非常多个),这个时候你可以用list,比如ArrayList当你需要一个“集合”的时候(想想什么是集合),就用Set当你需要映射(映射就是一一对应关系,比如我输入一个字符串,你就给我返回另一个对象)这个时候就用map这种事情都是在实践中出来的,需要什么用什么,杀鸡不用牛刀,选合适的才是重要的]
java中我想请问什么时候才考虑用Map
如果你需要通过一个名字去获取数据的时候就可以用Map。
如果你只是从数据库查询出来,很多条数据,那就放到List。
假如你有List
,你要获取名字为张三的学生的其他信息,那么你就需要循环List
然后判断student的名字是张三。但是如果你用的Map
,假设Map的key就是学生的名字,那么你就只需要通过map.get(张三)就得到这个Student对象。
所以,其实你对比一下就可以知道哪种更合适。
好了,文章到这里就结束啦,如果本次分享的java什么情况使用map和java中我想请问什么时候才考虑用Map问题对您有所帮助,还望关注下本站哦!