java集合定义map

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java集合定义map相关的知识,希望对你有一定的参考价值。

我定义了一个Map<String,ArrayList<BigDecimal[]>> map = new HashMap<String,ArrayList<BigDecimal[]>>();
然后算值为 List<BigDecimal[]> tempList = new ArrayList<BigDecimal[]>();
最后提示 map<String,List>不能调用map<String,ArrayList>

Map接口映射唯一键的值。一个关键是,要使用在日后检索值对象。

给定一个键和一个值,可以在一个Map对象存储的值。后的值被存储时,可以使用它的键检索。

抛出一个NoSuchElementException异常,是因为调用映射不存在的项目。

当一个对象是在映射上的元素不兼容抛出一个ClassCastException异常。

NullYiibaierException异常被抛出,如果试图使用一个空对象。

当试图改变一个不可修改的Map,则抛出一个UnsupportedOperationException异常。

SN

方法与描述

void clear( )

移除调用映射的所有键/值对。

boolean containsKey(Object k)

返回true如果调用映射包含k作为重点。否则,返回false。

boolean containsValue(Object v)

返回true如果映射包含v作为一个值。否则,返回false。

Set entrySet( )

返回一组包含在地图中的条目。该集合包含类型Map.Entry对象。这种方法提供了一组视图调用地图。

boolean equals(Object obj)

如果obj是一个Map返回true,并且包含相同的条目。否则,返回false。

Object get(Object k)

返回与k关联的值。

int hashCode( )

返回调用映射的哈希代码。

boolean isEmpty( )

如果调用映射为空返回true。否则,返回false。

Set keySet( )

返回一个集,其中包含调用映射的键。这种方法提供了一组视图中调用映射的键。

Object put(Object k, Object v)

放入调用映射中的条目,覆盖与键相关联的任何一个值。键和值分别为k和v。如果不已经存在键返回null。否则,将返回关联键的前一个值。

void putAll(Map m)

把从m所有条目放进入此映射。

Object remove(Object k)

删除其关键字等于k中的条目。

int size( )

返回在映射上的键/值对的数目。

Collection values( )

返回包含在映射中的值的集合。这种方法提供了一个集合视图在映射中的值。

例子:

映射有其不同的类实现,比如HashMap。下面是例子来说明映射功能:

Map Elements
Mahnaz=31, Ayan=12, Daisy=14, Zara=8
参考技术A 类型不匹配 一个是 List 另一个是ArrayLIst, List<BigDecimal[]> tempList = new ArrayList<BigDecimal[]>();追问

我问题写的都是定义的ArrayLIst啊

参考技术B map 定义成Map<String,List<BigDecimal[]>> map追问

这个我知道可以,问题是为啥我定义map中不能直接定义ArrayList么?

追答

如果你定义成ArrayList 那么放进去的数据 就必须是ArrayList类型的 也就是你的tmpList要声明成
ArrayList tempList

追问

谢谢哈,以前一直没注意,以为定义tempList就是ArrayList了!

本回答被提问者和网友采纳
参考技术C Map<String,List<BigDecimal[]>> map = new HashMap<String,List<BigDecimal[]>>();
或者这边List<BigDecimal[]> tempList换成arraylist
前面的才是定义的类型
参考技术D Map<String,String> map=new HashMap<String,String>();
String s1=new String("hello");
String s3=new String("world");
map.put("s1",s1);
map.put("s3",s3);
System.out.println(map);

是用for遍历的吗

第三节: Dart 中常用集合 List/Map

参考技术A 第一节: Dart 语法了解,认识变量,常量,数据类型
第二节: Dart 操作符(运算符)
第三节: Dart 中常用集合 List/Map
第四节: Dart 函数使用,声明函数/匿名函数/可选参数/作用域/闭包
第五节: Dart 面向对象/构造函数/静态属性
第六节: Dart中抽象类abstract/接口implements/混入Mixin
第七节: Dart中泛型/泛型定义与使用
第八节: Dart 中的库/自定义库/内置库/第三方库

Dart 附带了核心集合 API ,其中包括 list ,set 和 map 类。

lists 可以通过字面量来创建和初始化。 另外,也可以使用 List 的构造函数。

List 类还定义了若干方法,用于向列表添加或删除项目

接下来就让我们好好学习一些List列表的属性和方法

示例:

Set 是没有顺序且不能重复的集合,所以不能通过索引去获取值

通过add方法给set添加内容

因为set内容不能重复, 所以利用这个特性给list去重,

因此set主要的功能就是数组去重.

流程:

map 是一个无序的 key-value (键值对)集合,就是大家熟知的 dictionary 或者 hash 。 map 将 kay 与 value 关联,以便于检索。和 JavaScript 不同,Dart 对象不是 map 。

声明 map 可以使用简洁的字面量语法,也可以使用传统构造函数:

示例

示例:

示例:

以上是关于java集合定义map的主要内容,如果未能解决你的问题,请参考以下文章

Java集合之List常见操作

Java 中List集合中自定义排序

定义一个集合类

JAVA笔记(16)---集合- 详解 Set集合( Map 体系集合常用方法;哈希表;二叉树数据结构;Map集合,如何自定义集合排序规则 )

Java集合底层原理

java集合