java如何声明一个Map类型的方法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何声明一个Map类型的方法?相关的知识,希望对你有一定的参考价值。

Map<String,String> hm=new HashMap<String,String>();
public Map<String,String> goodsCart(String goodsid,String goodsprice)
return hm.put(goodsid, goodsprice);

我这样写报错啊

Map<String,String> map=new HashMap<String,String>();

public Map<String,String> goodsCart(String goodsid,String goodsprice)
map.put(goodsid, goodsprice);//这个地方要提出来 不能直接return
return map;


直接retrun 是个String类型 而不是map类型追问

按照你的写法可以了

参考技术A

    package collection;

    import java.util.HashMap;

    import java.util.Iterator;

    import java.util.Map;

    import java.util.Set;

    public class MyMap

Map的一般用法:

1.声明一个Map,Map map = new HashMap();

2 .向map中放值 ,注意: map是key-value的形式存放的,如:map.put("sa","dd");

3 .从map中取值,String str = map.get("sa").toString,结果是: str = "dd';

4 .遍历一个map,从中取得key和value,Map m= new HashMap();

5.for(Object obj : map.keySet())、Object value = map.get(obj )。

Map.Entry使用详解

Map是java中的接口,Map.Entry是Map的一个内部接口。

Map提供了一些常用方法,如keySet()、entrySet()等方法,keySet()方法返回值是Map中key值的集合;entrySet()的返回值也是返回一个Set集合,此集合的类型为Map.Entry。

Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry<K,V>。它表示Map中的一个实体(一个key-value对)。接口中有getKey(),getValue方法。

Map.Entry使用

你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦?使用Map.Entry类,你可以得到在同一时间得到所有的信息。标准的Map访问方法如下:

Set keys = map.keySet( );
if(keys != null) {
Iterator iterator = keys.iterator( );
while(iterator.hasNext( )) {
Object key = iterator.next( );
Object value = map.get(key);
;....
;}

然后,这个方法有一个问题。从Map中取得关键字之后,我们必须每次重复返回到Map中取得相对的值,这是很繁琐和费时的。

幸运的是,这里有一个更加简单的途径。Map类提供了一个称为entrySet()的方法,这个方法返回一个Map.Entry实例化后的对象集。接着,Map.Entry类提供了一个getKey()方法和一个getValue()方法,因此,上面的代码可以被组织得更符合逻辑。举例如下:

Set entries = map.entrySet( );
if(entries != null) {
Iterator iterator = entries.iterator( );
while(iterator.hasNext( )) {
Map.Entry entry =iterator.next( );
Object key = entry.getKey( );
Object value = entry.getValue();
;....
}
}

尽管增加了一行代码,我们却省略了许多对Map不必要的“get”调用。同时,提供给开发人员一个同时保持了关键字和其对应的值的类。Map.Entry同时也提供了一个setValue()方法,程序员可以使用它修改map里面的值。

文章转载于:http://www.cnblogs.com/guoxu/articles/1703393.html


















以上是关于java如何声明一个Map类型的方法?的主要内容,如果未能解决你的问题,请参考以下文章

java list能赋空值吗

如何让 PhpStorm 理解 Ds\Map 键类型?

在map中key只能是字符串吗

java中如何使用map存取数据

java Map及Map.Entry详解

Java 泛型