关于Java的Map/List

一、MAP

1、Map和HashMap

Map是一个接口,HashMap是Map的一个实现类,所以可以如下定义:

Map<String, Integer> m = new HashMap<String, Integer>();
HashMap<String, Integer> m = new HashMap<String, Integer>();

不能如下定义,因为接口是不能实例化的:

Map<String, Integer> m = new Map<String, Integer>();
HashMap<String, Integer> m = new Map<String, Integer>();

2、Map的遍历可参考:

    Java中如何遍历Map对象的4种方法


二、List

1、List和ArrayList

List是一个接口,ArrayList是List的一个实现类,所以可以如下定义:

List<String> m = new ArrayList<String>();
ArrayList<String> m = new ArrayList<String>();

2、List的合并可以用addAll函数。

3、List去重。

(1)、不在意顺序。

public static List removeDuplicate(List list) {
	Set set = new HashSet();
	List newList = new ArrayList();

	set.addAll(list);
	newList.addAll(set);

	return newList;
}

(2)、保持顺序(代码来自:java ArrayList去重复值

public static List removeDuplicateWithOrder(List list) {
	Set set = new HashSet();
	List newList = new ArrayList();
	for (Iterator iter = list.iterator(); iter.hasNext();) {
		Object element = iter.next();
		if (set.add(element))
			newList.add(element);
	}
	return newList;
}

4、List中存放自定义对象时排序可参考:

    JAVA中Collections.sort()实现List排序的公共方法和自定义方法

*** walker ***

时间: 2024-11-09 09:59:37

关于Java的Map/List的相关文章

mybatis异常:Could not find result map java.util.Map 问题分析及解决

错误写法 <select id="queryXXXCount" resultMap="java.util.Map" > mybatis报出的异常日志: org.apache.ibatis.builder.IncompleteElementException: Could not find result map java.util.Map at org.apache.ibatis.builder.MapperBuilderAssistant.setStat

Java中Map接口的遍历

package Test4; import java.util.Collection;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set; import org.junit.Test; public class MapBianLi { /* * 如何遍历Map * Set keySet()-->遍历Key * Collection values()-->遍历va

JAVA集合------Map (HashMap实现)

package java_util_map; import java.util.Collection; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; import java.util.Set; public class MapTest01 { public static void main(String[] args) { /*  * Map是一个接口,HashMap是Map的一个实现类  

Java遍历Map集合方法

package testMap; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.Set; /**  * 循环遍历Map集合  *   * @author Administrator  *   */ pub

细说java中Map的两种迭代方式

以前对java中迭代方式总是迷迷糊糊的,今天总算弄懂了,特意的总结了一下,基本是算是理解透彻了. 1.再说Map之前先说下Iterator: Iterator主要用于遍历(即迭代访问)Collection集合中的元素,Iterator也称为迭代器.它仅仅只有三个方法:hasNext(),next()和remove() hasNext():如果仍有元素可以迭代,则返回 true.(换句话说,如果 next 返回了元素而不是 抛出异常,则返回 true). next():返回迭代的下一个元素. re

java中map集合的迭代

import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class TestMap { public static void main(String[] args) { Map<Integer, String> map = new HashMap<Integer, String>(); map.put(1, "a"); map.put(2, "b

java中Map的用法(HaspMap用法)

public interface Map<K,V> 将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值. 1 import java.util.HashMap; 2 import java.util.Map; 3 4 5 public class Test1 { 6 7 public static void main(String[] args) { 8 Map map = new HashMap();//声明一个Map 9 map.put("s",

java按照Map值进行排序输出

package com.huawei.test; import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Set; public class

详解Java中Map用法

Map以按键/数值对的形式存储数据,这里要特别说明( Map.Entry,是Map的内部类,它用来描述Map中的键/值对). Map是一个接口,我们平时多用它的实现类HashMap. 用例如下: public static void main(String args[]) { HashMap hashmap = new HashMap(); hashmap.put("Item0", "Value0"); hashmap.put("Item1",

java基础-Map的静态初始化以及Map的遍历等.....................

1.map的静态初始化,以及map遍历的几种方法: package com.cy.test; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; public class Test { public static void main(String[] args) { Map<String, Integer> map = new HashMap