用Map存放对象
设计一个TXT文件,里面存放了10个同学的学号和姓名。给定学生的学号,问该学生在不在名单中,如果在,给出姓名。
[基本要求] 使用Java AP I中的Map相关的技术来完成实验任务。
1.使用文件操作,读出文件中的学号和姓名;
2.学号作为KEY,姓名作为VALUE,放到MAP中;
从命令行中输入的学号,作为KEY,在MAP中进行检索。
源代码
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class 在DVD {
public static void main(String[] args) {
// TODO 自动生成的方法存根
File f=new File("student.txt");
Map<String, String> map=new HashMap<String, String>();
try {
Scanner sc=new Scanner(f,"UTF-8");
for(int i=0;i<10;++i)
{
String xh=sc.next();
String xm=sc.next();
System.out.println("读入数据:"+xh+"\t"+xm);
//Stu s=new Stu(t1, t2);
map.put(xh, xm);
}
Scanner reader=new Scanner(System.in);
String t;
while(true)
{
System.out.print("输入要查询的学号(以0结束):");
t=reader.next();int flag=Integer.parseInt(t);
if(flag==0)break;
if(map.containsKey(t))
{
System.out.println(map.get(t));
}
else
{
System.out.println("这个学号不存在");
}
}
} catch (FileNotFoundException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
class Stu
{
String xh;
String xm;
public Stu(String a,String b)
{
xh=a;xm=b;
}
}