这个问题的结果是在最后抛出一些随机数字,我似乎无法弄明白。 我想通过ID和Name插入字典。但是,当我使用find函数时,它似乎无法正常工作。我尝试通过StringTokenizer方法读取此文件,结果相同。
任何帮助将不胜感激。
文本文件e1.txt只有两行:
5,rockey,4 Palomino Dr
6,James,86 norvay
输出我得到的如下:
Payroll @ 15db9742< ---这是一个问题
薪资@ 15db9742
public static void main(String[] args) throws Exception{
UALdictionary<Integer,Payroll> idd=new UALdictionary<Integer,Payroll>();
UALdictionary<String,Payroll>nameD=new UALdictionary<String,Payroll>();
//Scanner cheese= new Scanner(new File("employee.txt"));
//FileReader file = new FileReader("e1.txt");
BufferedReader br = new BufferedReader(new FileReader("e1.txt"));
//Scanner ch =new Scanner(new File("e1.txt"));
String line = null;
while ((line = br.readLine()) != null)
{
//StringTokenizer st = new StringTokenizer(ch.nextLine(), ",");
//System.out.println("line");
String[] lineSplit = line.split(",");
int iD= Integer.parseInt(lineSplit[0]);
String name = lineSplit[1];
String addr= lineSplit[2];
Payroll py = new Payroll(iD,name,addr);
idd.insert(py.getID(), py);
nameD.insert(py.getname(), py);
}
idd.toString();
System.out.println(idd.find(5));
System.out.println(nameD.find("rockey"));
}
}
/** A simple payroll entry with ID, name, address fields */
class Payroll {
private Integer ID;
private String name;
private String address;
/** Constructor */
Payroll(int inID, String inname, String inaddr) {
ID = inID;
name = inname;
address = inaddr;
}
/** Data member access functions */
public Integer getID() { return ID; }
public String getname() { return name; }
public String getaddr() { return address; }
}
答案 0 :(得分:0)
Java - toString()方法
描述
该方法用于获取表示Number对象值的String对象。
语法
以下是此方法的所有变体 -
String toString()
换句话说,在你的班级工资单中覆盖方法toString,这样你就可以有不同的东西=)