黑马程序员技术交流社区
标题:
求助用两种方式取出集合里的元素(黑马面试题)
[打印本页]
作者:
执笔画梦
时间:
2015-1-7 22:05
标题:
求助用两种方式取出集合里的元素(黑马面试题)
第一种方式我会,以下是我写的代码,用的keySet()方法,大家看思路就好。
那第二种方法我就不会了,用values()方法应该不可以把?
/*
* 用两种方式取出map集合里的元素
* */
package cn.itcast.day18;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class Test {
public static void main(String[] args) {
/*
* 思路:
* A利用Map集合里的ketSet()方法获取键的集合,用set集合接收
* B用set中的迭代器迭代map键,然后通过键来获取值
*/
//创建Map对象
Map<Integer,String> map1 = new HashMap<Integer,String>();
//添加元素
map1.put(1, "学生一号");
map1.put(2, "学生二号");
map1.put(3, "学生三号");
//获取键
Set<Integer> set1 = map1.keySet();
//遍历Set
for(Integer key : set1){
//通过键获取值
String value = map1.get(key);
//打印键和值
System.out.println("键为:"+key+",值为:"+value);
}
}
}
复制代码
作者:
bjuth
时间:
2015-1-8 20:46
entrySet()算一种么?
package com.success;
import java.util.HashMap;
import java.util.Map;
//取出一个字符串中字母出现的次数。如:字符串:"abcdekka27qoq" ,输出格式为:a(2)b(1)k(2)...
public class Success10 {
public static void sop(Object obj) {
System.out.println(obj);
}
public static void main(String[] args) {
char[] c = "abcdekka27qoq".toCharArray();
HashMap<Character, Integer> hm = new HashMap<Character, Integer>();
int num = 0;
for (int i = 0; i < c.length; i++) {
if ((c[i] >= 'a' && c[i] <= 'z') || (c[i] >= 'A' && c[i] <= 'Z')) {
if (hm.get(c[i]) != null)
num = hm.get(c[i]);
num++;
hm.put(c[i], num);
num = 0;
}
}
String str = "";
for (Map.Entry<Character, Integer> me : hm.entrySet()) {
str += me.getKey() + "(" + me.getValue() + ")";
}
sop(str);
}
}
复制代码
作者:
bitwdh
时间:
2016-7-3 20:32
好好利用黑马论坛的资源,看能不能进黑马就业班,谢谢你们的分享。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2