要求:
1)创建一个HashMap,key为字符串,value为People()类,类包括姓名和年龄。
2)要求输入关键字,在映射(Map)集合中进行查找。
下面是我实现的过程:
第一步,创建一个People()对象
class People{
String name;
int age;
public People(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "People [name=" + name + ", age=" + age + "]";
}
}
第二步,实现逻辑
import java.util.*;
/* 在映射(Map)集合中查找指定关键字的元素
* 要求输入关键字,在映射(Map)集合中进行查找。
*/
class People{
String name;
int age;
public People(String name, int age) {
super();
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "People [name=" + name + ", age=" + age + "]";
}
}
public class test {
public static void main(String args[]) {
Map<String,People> peoples = new HashMap<String,People>();
peoples.put("rose", new People("rose",18));
peoples.put("hunifu", new People("hunifu",19));
peoples.put("hunifu", new People("britsh",20));
// 判断 peoples 集合,如果存在元素,则满足条件,所以这里判断集合的大小
if(peoples.size() > 0) {//@@正确判断 Map 元素个数
Scanner sc=new Scanner(System.in);
String key=sc.next();
// 判断输入的key是否在集合中
if(peoples.containsKey(key))//@@判断关键字是否存在 Map 内
// 如果元素key在集合中,则输出对应的People对象
System.out.println(peoples.get(key));//@@取出关键字指定元素
else
System.out.println("映射中不存在 key ="+key+" 的元素");
}
}
}