noobs的HashMap-编译器“;找不到符号-方法get(java.lang.string)";
我自己找不到解决这个问题的办法。请给我小费什么的noobs的HashMap-编译器“;找不到符号-方法get(java.lang.string)";,java,hashmap,Java,Hashmap,我自己找不到解决这个问题的办法。请给我小费什么的 import java.util.*; import java.io.*; class Fulgleinfluens { public static void main(String[] args) { HashMap <String, Komm> Komm = new hashMap<String, Komm>(); int tell
import java.util.*;
import java.io.*;
class Fulgleinfluens {
public static void main(String[] args) {
HashMap <String, Komm> Komm = new hashMap<String, Komm>();
int teller = 0;
try {
Scanner FilKom = new Scanner(new File("KommuneKoordinater.txt"));
while(FilKom.hasNextLine()) {
String linje = FilKom.nextLine();
String [] dellinje = linje.split(",");
String kommune = dellinje[0];
String fylke = dellinje[1];
String lengdegrad = dellinje[2];
String breddegrad = dellinje[3];
Komm enKom = new Komm(kommune, fylke, lengdegrad, breddegrad);
Komm.put(kommune, enKom);
teller++;
}
} catch (Exception e) {
System.out.println("En feil oppsto ved lesing av fil");
}
System.out.println("Lest "+teller+" antall linjer");
}
void getKommuneMap () {
String kommune = "Sarpsborg";
Komm enKom = (Komm) Komm.get(kommune);
}
}
class Komm {
String kommune;
String fylke;
String lengdegrad;
String breddegrad;
Komm(String kommune, String fylke, String lengdegrad, String breddegrad) {
this.kommune = kommune;
this.fylke = fylke;
this.lengdegrad = lengdegrad;
this.breddegrad = breddegrad;
}
}
import java.util.*;
导入java.io.*;
富氏类{
公共静态void main(字符串[]args){
HashMap Komm=新的HashMap();
int-teller=0;
试一试{
Scanner FilKom=新扫描仪(新文件(“kommunekoordinator.txt”);
while(FilKom.hasNextLine()){
字符串linje=FilKom.nextLine();
字符串[]dellinje=linje.split(“,”);
字符串kommune=dellinje[0];
字符串fylke=dellinje[1];
字符串lengdegad=dellinje[2];
字符串breddegrad=dellinje[3];
Komm-enKom=新的Komm(kommune、fylke、lengdegrad、breddegrad);
Komm.put(kommune,enKom);
teller++;
}
}捕获(例外e){
系统输出打印(“En feil oppstoved lesing av fil”);
}
System.out.println(“test”+teller+“antall linjer”);
}
void getKommuneMap(){
字符串kommune=“Sarpsborg”;
Komm enKom=(Komm)Komm.get(kommune);
}
}
科姆级{
弦孔雀鱼;
字符串fylke;
弦长;
弦布雷德格拉德;
Komm(串kommune、串fylke、串lengdegrad、串breddegrad){
this.kommune=kommune;
this.fylke=fylke;
this.lengdegrad=lengdegrad;
this.breddegrad=breddegrad;
}
}
您的导入是否正确?尝试:
import java.util.*; // or java.util.HashMap
import java.io.*;
我看到进口货物被更正了。但是你的代码搞乱了。您的
Komm
变量被定义了很多次。您试图调用Komm.get()
,只有当get()
在类Komm
中被定义为静态方法时,它才会起作用。据我所知,它不是。您不能将地图的实例命名为与类名称相同的名称Komm
。将其更改为komm
,应该可以。现在您正在尝试调用Komm
上的静态方法,而不是HashMap.get()
这不可能是您的代码。它充满了拼写错误,就像hashMap对hashMap一样。我不知道你的主题在代码中的什么地方出错了。太晚了——我看了,然后转向斯通。也许一个编辑可以把下一个可怜的灵魂从这种命运中拯救出来。komm
对于任何不是komm
实例的东西来说都是一个可怕的名字。可以称之为kommMap或其他什么。我不知道Komm是什么意思,所以我不知道你想在这里做什么。但是如果变量不是指komm
,我真的不认为它应该被命名为komm
。感谢您的快速响应!我是编程(java)和学习新手,感谢所有的Answare。将HashMap名称更改为komm时,编译器无法在komm enKom=(komm)komm.get(kommune)中找到variabel komm@MatrixFrog-你说得对,我对这些类型感到困惑kommMap
是一个更好的选择。@cbeberge-您是如何更改名称的?请发布您的更新代码。