java中的Map接口
实现Map接口的类用来存储——键值对
Map接口的实现类有HashMap和TreeMap等
键值不能重复(键相当与索引)
TestMap.java
import java.util.*; //Map方法举例 public class TestMap { public static void main(String[] args) { Map m1 = new HashMap(); //put("K","V"),键——值 m1.put("one",new Integer(1)); m1.put("two",new Integer(2)); m1.put("three",new Integer(3)); Map m2 = new TreeMap(); m2.put("A",new Integer(1)); m2.put("B",new Integer(2)); //size()大小 System.out.println(m1.size());//3 //containsKey,包含Key System.out.println(m1.containsKey("one"));//true //containsValue,包含Value System.out.println(m2.containsValue(new Integer(1)));//true if(m1.containsKey("two")){ //get(),通过K找到对象,对象在调用intValue(),得到int值 int i = ((Integer)m1.get("two")).intValue(); System.out.println(i);//2 } //将m1 copy到 m3,再将m2放入m3 Map m3 = new HashMap(m1); m3.putAll(m2); System.out.println(m3);//{A=1, B=2, two=2, three=3, one=1},没有顺序 } }
F:\java>javac TestMap.java 注: TestMap.java使用了未经检查或不安全的操作。 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。 F:\java>java TestMap 3 true true 2 {A=1, B=2, two=2, three=3, one=1} F:\java>
Auto-boxing/unboxing
自动打包/解包
TestM.java
import java.util.*; public class TestM { public static void main(String args[]) { //自动打包/解包 Map m1 = new HashMap(); Map m2 = new TreeMap(); //m1.put("one",new Integer(1)); //put("one", 1)中的“1”不是int型的值,而是自动打包为“对象” m1.put("one", 1); //m1.put("two",new Integer(2)); m1.put("two", 2); //m1.put("three",new Integer(3)); m1.put("three", 3); //m2.put("A",new Integer(1)); m2.put("A", 1); //m2.put("B",new Integer(2)); m2.put("B", 2); System.out.println(m1.size()); System.out.println(m1.containsKey("one")); System.out.println //(m2.containsValue(new Integer(1))); (m2.containsValue(1)); if(m1.containsKey("two")) { //int i = ((Integer)m1.get("two")).intValue(); //自动解包,(Integer)m1.get("two") int i = (Integer)m1.get("two"); System.out.println(i); } Map m3 = new HashMap(m1); m3.putAll(m2); System.out.println(m3); } }
F:\java>javac TestM.java 注: TestM.java使用了未经检查或不安全的操作。 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。 F:\java>java TestM 3 true true 2 {A=1, B=2, two=2, three=3, one=1} F:\java>
计算args数组中元素重复的个数
TestArgsWords.java
import java.util.*; /* 计算args数组中元素重复的个数 */ public class TestArgsWords { private static final Integer ONE = new Integer(1); public static void main(String args[]) { Map m = new HashMap(); for (int i = 0; i < args.length; i++) { //拿到args的值,不存在时freq = null Integer freq = (Integer) m.get(args[i]); //将args的值放入map中,(K,V) m.put(args[i],(freq == null? ONE : new Integer(freq.intValue() + 1))); } //打印m的大小 System.out.println(m.size() + " distinct words detected:"); //打印m的内容 System.out.println(m); } }
F:\java>javac TestArgsWords.java 注: TestArgsWords.java使用了未经检查或不安全的操作。 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。 F:\java>java TestArgsWords 0 distinct words detected: {} F:\java>java TestArgsWords aa aab aa aa sss aa db aa 4 distinct words detected: {aa=5, sss=1, aab=1, db=1} F:\java>
用自动打包解包,改写上面的方法
TestArgsWords.java
import java.util.*; /* 计算args数组中元素重复的个数 改写为自动打包解包的形式 */ public class TestArgsWords { //private static final Integer ONE = new Integer(1); private static final int ONE = 1; public static void main(String args[]) { Map m = new HashMap(); for (int i = 0; i < args.length; i++) { //拿到args的值,不存在时freq = null //Integer freq = (Integer) m.get(args[i]); //如果m.get()中的值为空,赋值为0 int freq = (Integer) m.get(args[i]) == null ? 0 : (Integer) m.get(args[i]); //将args的值放入map中,(K,V) //m.put(args[i],(freq == null? ONE : new Integer(freq.intValue() + 1))); m.put(args[i], freq==0 ? ONE : freq + 1); } //打印m的大小 System.out.println(m.size() + " distinct words detected:"); //打印m的内容 System.out.println(m); } }
F:\java>javac TestArgsWords.java 注: TestArgsWords.java使用了未经检查或不安全的操作。 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。 F:\java>java TestArgsWords aa aab aa aa sss aa db aa 4 distinct words detected: {aa=5, sss=1, aab=1, db=1} F:\java>
相关推荐
12.javaMap 接口及其实现类.zip12.javaMap 接口及其实现类.zip12.javaMap 接口及其实现类.zip12.javaMap 接口及其实现类.zip12.javaMap 接口及其实现类.zip12.javaMap 接口及其实现类.zip12.javaMap 接口及其实现类....
13.javaMap接口的两个实现类:.zip13.javaMap接口的两个实现类:.zip13.javaMap接口的两个实现类:.zip13.javaMap接口的两个实现类:.zip13.javaMap接口的两个实现类:.zip13.javaMap接口的两个实现类:.zip13.java...
Java中的Map接口是Java集合框架的重要组成部分,它用于存储键值对的数据结构,其中每个键都是唯一的,并且与一个值相关联。Map集合不同于List,因为它不维护元素的顺序,而是通过键来访问其对应的值。本文将详细介绍...
Java中的Map接口是Java集合框架的重要组成部分,它用于存储键值对的数据结构。Map不同于List,List是以索引来访问元素,而Map则是通过键(key)来查找对应的值(value)。Map接口定义了一系列方法,使得我们可以对...
在Java环境中调用MapServer,通常会利用MapScript库来实现,这是一个允许编程语言与MapServer进行交互的接口。本实例主要探讨如何在Java项目中配置和使用MapServer,以及解决配置过程中遇到的问题。 首先,我们需要...
在Java编程语言中,`Map`接口是集合框架的一个重要组成部分,它用于存储键值对。其中,`HashMap`是`Map`接口的一个实现类,提供了基于哈希表的存储方式,具有较快的访问速度。在处理数据时,我们经常需要遍历`Map`中...
在Java编程中,Map接口是数据结构中非常重要的一个部分,它提供了键值对的存储方式,便于快速访问和操作数据。在许多实际应用中,尤其是高性能和高并发的场景,Map常被用来实现缓存技术,以提高数据读取速度和系统...
本主题聚焦于易语言中的面向对象编程,特别是模仿Java集合框架的List和Map接口的实现。这些数据结构在编程中扮演着核心角色,用于组织和管理数据。 首先,让我们深入了解易语言的面向对象编程概念。面向对象编程...
### Java中的Map接口详解 #### 一、Map接口概述 Map接口是Java集合框架中的一个核心接口,它并不属于`Collection`接口体系。Map的主要功能是存储键值对(key-value pairs),其中键(key)不允许重复,而值(value...
在Java编程语言中,Map接口是集合框架的重要组成部分,它提供了键值对(key-value pairs)的存储方式。Map不是列表或数组,而是允许我们通过一个键(key)来查找对应的值(value)。本篇文章将深入讲解Map的使用实例...
Map接口则是Java集合框架的一部分,它提供了键值对的数据存储方式,方便数据的存取。将Pojo对象转换为Map,可以简化数据处理过程,尤其是在JSP页面上展示数据时,Map的灵活性更加突出。本文将详细介绍如何实现Java中...
Map接口是Java中的另一个基本接口,用于存储键值对的集合。Map接口的实现类有多种,包括HashMap、TreeMap、LinkedHashMap等。 Map接口的实现类 HashMap类是Map接口的实现类,使用哈希表来存储键值对。HashMap类...
在Java编程语言中,Map接口是集合框架的重要组成部分,它提供了键值对(Key-Value)的数据存储方式。Map不是列表或数组,它允许通过键来查找和操作对应的值。本篇文章将详细介绍Map的基本用法和关键特性。 1. **...
Java中的Map映射机制是Java集合框架的重要组成部分,它提供了键值对的存储方式,使得可以通过键来查找和操作对应的值。Map接口是所有映射类的...理解和掌握Map接口及其常用实现对于编写高效、健壮的Java代码至关重要。
在Java编程语言中,`Map`接口是集合框架的重要组成部分,它存储键值对的数据结构。这个接口提供了许多高效的方法来存储、检索和操作数据。本示例将深入探讨Java中常用的`Map`实现,包括`HashMap`和`EnumMap`。 首先...
#### 二、Map接口及其实现 1. **Map接口**: - `Map`接口定义了一系列操作键值对的方法,如`put()`用于添加键值对、`get()`用于获取指定键对应的值等。 - `Map`接口位于`java.util`包下,它提供了基本的键值对映射...
在Java编程中,XML(可扩展标记语言)是一种用于存储和传输数据的标准化格式,而Map是Java集合框架中的一个重要接口,它提供了键值对的数据结构。将XML与Map进行互转是常见的需求,特别是在处理配置文件或者进行数据...
在Java中,"javamap"和"地图_java"可能是指使用Map类来模拟现实世界中的地理地图,例如通过键表示地理位置,值表示该地点的信息。这涉及到自定义类作为键值对中的元素类型,以及如何设计键值对以适应特定需求的问题...
在Java编程中,Map接口及其实现类是处理键值对数据的关键组成部分。Map接口定义了一种存储键值对的集合,其中每个键都是唯一的,与之映射到一个特定的值。通过使用Map,开发者可以快速检索、添加或删除键值对数据。...
### 一、Java Map接口简介 `Map`接口是Java集合框架的一部分,它提供了存储和检索唯一键对象及其对应的值对象的方法。一个`Map`中不能包含重复的键:每个键最多只能映射到一个值。`Map`的主要实现类有`HashMap`、`...