java中Array, List,Map,List「Map」的用法与区别

1.Array

1.1 定义

可以同时声明多个类型一样的变量。

1.2声明方式

//先声明后赋值
int[] attr = new int[100];
attr[0] = 12;
attr[99] = 3;

//边声明边赋值
int[] attr2 = {1, 2, 3, 5, 9, 87};

2.List

2.1 定义

Java.util.ArrayList类是一个动态数组类型,可以随时从链表中添加或删除一个元素。ArrayList实现了List接口并且可以动态改变大小的。当我们不知道数据元素的个数时,就可使用ArrayList;如果知道数据元素个数,就可以直接用数组。

2.2 声明方式

List<Object> list = new ArrayList<Object>();//Object:指List里的值是什么类型的,Object代表可以是任何形式的

2.3 方法

//add()   添加数据 
List<Object> list = new ArrayList<Object>();
list.add("北京");
list.add("深圳");
list.add("上海");


//get(index) 获取数据
list.get(0);  //结果:北京


//size()  list里的数据个数
list.size();


//遍历list
for(int i=0;i<list.size();i++){
    System.out.println(list.get(i));
}

3. Map集合

3.1 定义

将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值;相当于php中的键值对数组。

3.2 声明方式

//说明:Map是通过key-value(值键对) ,String代表key的类型(一般都是String),Object代表value的类型
Map<String,Object> map = new HashMap<String,Object>();

3.3 方法

//put(key,value)  赋值
Map<String,Object> map = new HashMap<String,Object>();
map.put("name", "小明");
map.put("sex", "男");
map.put("age", 18);


//get(key)  取值      
 map.get("name");  // 结果:小明

4.List<Map>

4.1 定义

将一个以上的map集合添加到ArrayList中;类似于php中的多维数组。

4.2 声明方式

 List<Map<String,Object>> listMap = new ArrayList<Map<String,Object>>();

4.3 方法

//先声明List<Map
List<Map<String,Object>> listMap = new ArrayList<Map<String,Object>>();

//再声明Map并赋值
Map<String,Object> map1 = new HashMap<String,Object>();
map1.put("name", "小明");
map1.put("sex", "男");
map1.put("age", 18);

Map<String,Object> map2 = new HashMap<String,Object>();
map2.put("name", "小红");
map2.put("sex", "女");
map2.put("age", 16);


//再将map添加到List中
listMap.add(map1);
listMap.add(map2);
//结果:[{sex=男, name=小明, age=18}, {sex=女, name=小红, age=16}]


//遍历
for(int i = 0;i<listMap.size();i++){
    System.out.print(listMap.get(i).get("name"));
    System.out.print(listMap.get(i).get("sex"));
    System.out.print(listMap.get(i).get("age"));
    System.out.println();
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章