javase 类与对象
程序员文章站
2022-04-05 18:57:36
...
为什么要使用集合
假设需要存储一个班20个学生的信息,如何实现?
使用数组:
假设来了一个新同学,如何把新同学的信息添加到数组里?
假设需要存储所有学生的姓名和成绩,并一一对应,如何存储在一个数组里?
上述问题,使用数组实现比较困难。可以使用Java的集合框架。
集合基础
Java集合框架提供了一套性能优良、使用方便的接口和类,它们位于java.util包中。
Java集合按照其存储结构可以分为两大类,即单列集合Collection和双列集合Map。
Collection是单列集合类的根接口,其有两个重要子接口 List 和Set。
List接口的主要类有 ArrayList 和 LinkedList。
Set接口的主要类有 HashSet和TreeSet。
Map接口的主要实现类有HashMap 和 TreeMap
各接口的特点:
List接口存储一组不唯一,有序(插入顺序)的对象
Set接口存储一组唯一,无序的对象
Map接口存储一组键值对象,提供key到value的映射
ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高。
集合的用法:
package com.ckx.demo;
import java.util.ArrayList;
import java.util.List;
public class hello8 {
public void User() {
}
public static void main(String[] args) {
List <User> list = new ArrayList<User>();
list.add("1111");
list.add("were");
list.add("user");
User user = new User();
for(int i = 0;i < list.size();i++) {
System.out.println(list.get(i));
}
}
}
List类的用法
package com.zwy.demo2;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Text2 {
public static void main(String[] args) {
List<Map<String, Integer>> list = new ArrayList<Map<String, Integer>>();
Map<String, Integer> countries = new HashMap<String, Integer>();
countries.put("username",100);
Map<String, Integer> counties1 = new HashMap<String, Integer>();
counties1.put("username", 10);
list.add(countries);
list.add(counties1);
}
}
上一篇: golang利用http模块构建redis读写查api
下一篇: javase 类与对象