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-您是如何更改名称的?请发布您的更新代码。