如何在Java中从HashMap获取值?

如何在Java中从HashMap获取值?,java,Java,我想打印对象值。 我找不到它,也不知道怎么做 我无法用value()访问它 这是我的密码: public class txtdatei { private String pickerName; private String language; private float volumeGain; private long pickerId; private static Map<Long,txtdatei> mapp=new HashMap<Long,txtdatei>(

我想打印对象值。 我找不到它,也不知道怎么做

我无法用
value()访问它

这是我的密码:

public class txtdatei {

private String pickerName;
private String language;
private float volumeGain;
private long pickerId;
private static Map<Long,txtdatei> mapp=new HashMap<Long,txtdatei>();

public txtdatei(String username, String language, float volume){

    this.pickerName=username;
    this.language=language;
    this.volumeGain=volume; 
}
public static void main(String[] args){

    File file=new File("test.txt");
    try{
        file.createNewFile();
        FileWriter writer =new FileWriter(file);
        writer.write("username\tbenni\tlanguage\tgerman\n");
        writer.flush();
        writer.close();
        FileReader fr =new FileReader("test.txt");
        BufferedReader reader= new BufferedReader(fr);
        String zeile=reader.readLine();
    String [] data=zeile.split("\t");
    int i=0;
    for(i=0;i<data.length;i++)
    {
        if(data[i].equals("Username"))
                {
                    mapp.put((long)(1),new txtdatei(data[2],data[4],Float.parseFloat(data[6])));
                }
    }       
    System.out.println(mapp.get(1)); //dont know how to read the    
    }catch(IOException ioe){ioe.printStackTrace();}
公共类txtdatei{
私有字符串选择器名称;
私有字符串语言;
私人浮动卷;
私人长扒手;
私有静态映射mapp=newhashmap();
公共txtdatei(字符串用户名、字符串语言、浮动卷){
this.pickerName=用户名;
这个。语言=语言;
这个.volumeGain=体积;
}
公共静态void main(字符串[]args){
File File=新文件(“test.txt”);
试一试{
createNewFile();
FileWriter writer=新的FileWriter(文件);
writer.write(“用户名\tbenni\t语言\tgerman\n”);
writer.flush();
writer.close();
FileReader fr=新的FileReader(“test.txt”);
BufferedReader读取器=新的BufferedReader(fr);
字符串zeile=reader.readLine();
字符串[]数据=zeile.split(“\t”);
int i=0;

对于(i=0;i,这里有一个使用键获取map的每个值的解决方案

for(Long value: mapp.keySet()){
    System.out.println(mapp.get(value));
}

希望有帮助。

首先,您将密钥设置为Long,因此当您使用Map.get((Object)key)时,您需要给出一个Long来检索该值。我认为jvm会将1转换为整数,这就是您无法获取该值的原因。尝试一下,它应该可以工作:

 mapp.get((long)1)

您是否听说过使用?查看
地图。获取(键)
。此外,您还可以写入
用户名
,但要检查
用户名