java中我想请问啥时候才考虑用Map

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中我想请问啥时候才考虑用Map相关的知识,希望对你有一定的参考价值。

我一直不太用Map,请问什么 情况优先考虑用Map

如果你需要通过一个名字去获取数据的时候就可以用Map。
如果你只是从数据库查询出来,很多条数据,那就放到List。
假如你有List<Student>,你要获取名字为张三的学生的其他信息,那么你就需要循环List
然后判断student的名字是张三。但是如果你用的Map<String,Student>,假设Map的key就是学生的名字,那么你就只需要通过map.get(张三)就得到这个Student对象。
所以,其实你对比一下就可以知道哪种更合适。
参考技术A 如果你存进去,然后全部都用,一般是list;但是如果你存进去,预先不知道处理哪部分数据,你就用MAP;比如学生成绩集合,我让你找学号为XXXXX的成绩,这个时候list查询效率低 参考技术B 当你觉得反复的for循环List查值麻烦时,你可以试着用map<key,value>存储值,通过key来快速定位你要找的值本回答被提问者采纳 参考技术C 需要保存值对数据的时候例如Map a变量 里面有个key为key value为value的值就需要使用Map 使用key取得或操作这个属性. 参考技术D 需要用键值对的时候就用map

Visual Studio编译很慢,啥原因

如题。 并不是某个Project编译很慢,而是随着开机后编译次数增多而越来越慢。 同一个Project,刚开机的时候编译可能20秒左右,编译个10几20次之后编译所需时间会达到10分钟左右。 重启Visual Studio编译时间还是一样,只有重启电脑才会恢复到20秒。 我想可能是编译的时候生成了某些临时文件,而这些临时文件只有重启电脑的时候才会被清掉。 请问有哪些可能的原因? 如果确实是某些临时文件,请问这些临时文件保存在哪儿? 谢谢

参考技术A 第一步:你编译10几20次之后编译所需时间会达到10分钟左右,你关掉VS,并且用任务管理器关掉所有的vs进程
确保VS进程全部关掉后,重新启动VS打开项目,再次编译,如果时间正常则说明你的程序有死循环,程序问题,
如果时间很长,应该是VS问题,
不知道什么问题罗/
哈哈
你开发的其它程序有这种情况吗?

以上是关于java中我想请问啥时候才考虑用Map的主要内容,如果未能解决你的问题,请参考以下文章

请问HTML标签中啥时候用NAME,啥时候用ID,请通俗举例说明。还有JAVASCRIPT中啥时候用THROW语句?

php memcache啥时候使用

请问为啥AJAX在传输数据的时候要使用JSON格式?有啥好处吗?别说规定啊 我想知道原理。

我啥时候应该考虑使用内存数据库,需要注意啥问题?

我啥时候应该考虑使用 ORM 框架?

我们啥时候应该考虑使用私有或受保护?