java 打印hashmap值,在Java中打印HashMap

I have a HashMap:

private HashMap example= new HashMap();

Now I would Like to run through all the values and print them.

I wrote this:

for (TypeValue name: this.example.keySet()){

System.out.println(name);

}

It doesn't seem to work.

What is the problem?

EDIT:

Another question: Is this collection zero based? I mean if it has 1 key and value will the size be 0 or 1?

解决方案

keySet() only returns a set of key in your hashmap , you should iterate this key set and the get the value from the hashmap using these keys .

In your example , the type of the hashmap 's key is TypeKey , but you specified TypeValue in your generic for-loop , so it cannot be compiled. You should change it to :

for (TypeKey name: example.keySet()){

String key =name.toString();

String value = example.get(name).toString();

System.out.println(key + " " + value);

}

If you don't require to print key value and just need the hashmap value , you can use others' suggestion .

Another question: Is this collection

is zero base? I mean if it has 1 key

and value will it size be 0 or 1?

The collection returned from keySet() is a Set.You cannot get the value from a Set using an index , so it is not an question whether it is zero-based or one-based. If your hashmap has one key , the keySet() returned will has one entry inside , and its size is 1.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值