java的List操作

Python08

java的List操作,第1张

List<Integer> list = new ArrayList<Integer>()

list.add("a")

list.add("b")

list.add("c")

list.add("bb)

list.add("dd")

list.add("a")

Map<Integer,Integer> map = new HashMap<Integer,Integer>()

for(Integer i :list){

map.put(i, map.get(i)+1)

}

for (Object o : map.keySet()) {

   System.out.println(o + "出现次数:" + map.get(o))

}

参考一下

List和ArrayList的区别在于:

1、在编程语言中ArrayList类是.Net Framework提供的用于数据存储和检索的专用类。List 类可以简单视之为双向连结串行,以线性列的方式管理物件集合。List类是ArrayList类的泛型等效类。

2、ArrayList继承了IList接口,所以它可以很方便的进行数据的添加,插入和移除。List的大部分用法都与ArrayList相似,List类也继承了IList接口。

3、在ArrayList中可以插入不同类型的数据。ArrayList会把所有插入其中的数据都当作为object类型来处理,这其中存在装箱与拆箱的操作,会对系统造成性能上的损耗。而List需要声明其数据的对象类型。声明后插入其他类型数据,IDE就会报错,且不能通过编译。

4、在使用ArrayList中的数据来处理问题的时候,很可能会报类型不匹配的错误,即ArrayList不是类型安全的。而List已经声明过其数据的对象类型,是类型安全的,避免了前面讲的类型安全问题与装箱拆箱的性能问题。

5、ListArray就可以被构造。而List不能被构造,但可以为List创建一个引用。

扩展资料:

一、List泛型

通过允许指定泛型类或方法操作的特定类型,泛型功能将类型安全的任务从程序员转移给了编译器。不需要编写代码来检测数据类型是否正确,因为会在编译时强制使用正确的数据类型。减少了类型强制转换的需要和运行时错误的可能性。泛型提供了类型安全但没有增加多个实现的开销。

二、装箱与拆箱的概念:

1、装箱:就是将值类型的数据打包到引用类型的实例中 比如将int类型的值123赋给object对象o

int i=123object o=(object)i

2、拆箱:就是从引用数据中提取值类型 比如将object对象o的值赋给int类型的变量i

object o=123int i=(int)o

3、装箱与拆箱的过程是很损耗性能的。

参考资料:拆箱——百度百科

List指的是集合.<>是泛型,里面指定了这个集合中存放的是什么数据.

比如有一个学生类Student,Student里面包含了学生的一些信息.这样每一个Student对象就代表了一个学生.此时List<Student>就代表这个集合中存放了很多个学生对象,这个集合就像一个班级一样.