`
icyheart
  • 浏览: 779441 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

能用map的时候尽量不用List

    博客分类:
  • J2SE
 
阅读更多

今天在做项目的时候,用到了map,以前很少用的,一直在用List,现在才觉得其实map很好用,至少比list好用,一开始实体类数据都放在list中可是在遍历的时候总是出现错误,由其是remove以后,总是不能得到预期的结果,最后决定用map,将实体类有序的放到mapremove的时候从map中移除,这样可以根据mapkey-value进行操作,这里要注意一点,map不像list数据移走以后下面的会自动上移,map中的数据删除以后,下面的数据不会上移,当前位置的valueNull,最后将map中剩余的数据再次放到list中,这样在页面上就可以正常显示了。

分享到:
评论

相关推荐

    Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)

    本文将深入探讨如何在JSP中将`List`, `Set`, `Map`等集合类型的数据传递到Action,然后再通过`&lt;s:iterator&gt;`标签进行遍历显示。这种方式对于数据的展示和交互具有重要的实践意义。 首先,我们需要了解Struts2的工作...

    Hash_map 实现源码

    哈希映射(Hash Map)是一种常见的数据结构,它提供了键值对(Key-Value Pair)的快速存储和检索功能。在C++中,STL(Standard Template Library)提供了一个名为`std::unordered_map`的容器,它是基于哈希表实现的...

    strust2 checkboxlist

    其中,`list`属性指定选项列表,可以是Action类的属性或者Map对象;`name`属性表示表单域名称,用于提交时获取用户的选中项。 4. **Action类中的数据准备** 在Action类中,你需要创建一个列表或数组来填充...

    MapReduce详解Shuffle过程

    3. 在map task执行时,它的输出结果将被存储在内存缓冲区中,当缓冲区快满的时候需要将缓冲区的数据以一个临时文件的方式存放到磁盘。 4. 当整个map task结束后,再对磁盘中这个map task产生的所有临时文件做合并,...

    java笔记--集合类

    - **性能与灵活性**:在大多数情况下,建议仅与`List`或`Map`接口打交道,而不是直接使用`ArrayList`或`HashMap`,这样可以提高代码的灵活性和可维护性。例如,将`List list = new ArrayList()`改为`List list = new...

    前台常见问题获得list的优化方法

    避免使用数组索引作为key,因为它们不能准确反映元素的唯一性。 10. **计算优化**:尽量避免在渲染过程中进行复杂的计算,尤其是在`render`方法内。可以使用`useMemo`或`shouldComponentUpdate`等生命周期方法来...

    详解shuffle过程

    3. map 端的缓冲区存储着 map 的输出结果,当缓冲区快满的时候需要将缓冲区的数据以一个临时文件的方式存放到磁盘, 4. 当整个 map task 结束后再对磁盘中这个 map task 产生的所有临时文件做合并,生成最终的正式...

    spring代码3

    - **使用接口类型**:集合装配时尽量使用接口类型(如List而非ArrayList),这样可以更好地实现依赖倒置原则,增加代码的灵活性。 - **避免硬编码Bean名称**:尽量使用`@Qualifier`而不是硬编码Bean的名称,这样...

    常用高阶函数:转换

    因此,在某些情况下,我们可以尽量避免使用这种形式。比如,如果我们有一个数据类Goods,它有两个属性:name和price。name具有唯一性,可以作为Map的键,而price是可变的,可以作为Map的值。我们可以使用associate...

    java集合相关学习[整理].pdf

    这篇文档深入探讨了Java集合框架的实现机制及其相关概念,包括Collection、List、Set和Map等核心接口,以及它们的使用方法和实现原理。 1. 集合框架概述 集合框架是Java API中的一组接口和类,它为处理对象集合提供...

    winrunner实例详细使用说明

    - 在Analog模式下,尽量避免手动控制鼠标,使用键盘命令代替。 - 切换模式时,确保窗口在桌面的新位置,以适应Analog模式的录制需求。 以上就是WinRunner的基本使用方法,从识别GUI对象,创建GUI Map,录制和运行...

    java对象容器.docx

    Java对象容器是Java编程语言中用于存储和管理对象的关键组件,它们提供了灵活的方式来组织和操作数据,弥补了数组在某些场景下的不足。...在实际编程中,应尽量使用接口而非具体实现,以保持代码的灵活性和可维护性。

    Stream和Lambda表达式最佳实践

    因此,在使用时应当尽量减少不必要的代码,例如避免使用复杂的逻辑或嵌套结构。例如: ```java (int x) -&gt; x * x ``` 而不是: ```java (int x) -&gt; {return x * x;} ``` 2. **避免副作用**:Lambda表达式...

    java中级面试题(自己汇总)

    * List可以用for循环和迭代器查询,Set只能用迭代器查询。 * List查询快,插入和删除效率低;Set相反。 HashSet * HashSet如何元素不重复:先用HashCode判断地址是否相等,如相等再用equals方法比较。 HashMap、...

    My_IPCDemo

    AIDL支持基本数据类型、数组、List、Map等数据类型,但不支持自定义对象。如果需要传递自定义对象,这些对象必须继承自`Parcelable`或`Serializable`接口。 7. **线程模型**: AIDL调用默认在服务端的 Binder ...

    Google_开源项目_Gson教程.pdf

    2. **避免使用反射**:反射操作会降低性能,在可能的情况下,尽量避免使用反射。 3. **注意线程安全**:Gson实例本身不是线程安全的,如果在多线程环境中使用,应该创建一个单例。 通过上述知识点的学习,我们可以...

    JAVA并发容器代码随读1

    在`java.util.concurrent`包中,有四种主要的并发容器类型:队列(BlockingQueue)、Map(ConcurrentMap)、Set(ConcurrentSkipListSet和CopyOnWriteArraySet)以及List(CopyOnWriteArrayList)。这些容器的设计...

    Java泛型技术之发展.pdf

    - **集合操作**:使用泛型的List、Set、Map等,可以确保插入和取出的数据类型一致。 - **自定义数据结构**:创建自定义的泛型类或接口,以实现特定的数据结构,如优先队列、双端队列等。 - **通用方法**:编写...

    阿里巴巴Java开发手册终极版v1.3.0 高清带书签pdf版

    1. 数据类型选择:根据数据范围选择合适的数据类型,如能用int就不用long,避免不必要的内存开销。 2. 避免过度设计:不要过早优化,应先保证代码的正确性和可读性,再考虑性能问题。 3. 减少数据库查询:合理设计...

    java泛型的应用

    3. 存取HashMap中的元素,如`test4()`方法所示,可以使用`Map, Integer&gt;`限定键值对的类型,然后通过`map.entrySet()`获取所有键值对的Set,并用迭代器遍历它们。 需要注意的是,泛型类型参数只能是引用类型,不能...

Global site tag (gtag.js) - Google Analytics