我知道NullPointerExceptions是您在嘗試給出它不具有的0個屬性時所得到的結果。但爲什麼我在這裏得到一個nullpointerexception?它說,它應該是在這部分代碼:NullPointerException但爲什麼
class Oblig3A{
public static void main(String[]args){
OrdAnalyse oa = new OrdAnalyse();
String filArgs=args[0];
oa.analyseMetode(filArgs);
}
}
class OrdAnalyse{
void analyseMetode(String filArgs){
//Begynner med aa opprette alle variabler som trengs, disse deklareres rett under. De ligger her oppe bare for at jeg skal ha oversikten over de.
Scanner input, innfil;
String[] ord, fortelling;
int[] antall;
int antUnikeOrd;
PrintWriter utfil;
//Deklarerer alle bortsett fra de som har med fil aa gjore, disse deklareres inne i en try-catch-loop (printwriter utfil og scanner innfil).
input=new Scanner(System.in);
ord=new String[5000];
antall=new int[5000];
antUnikeOrd=0;
try{
innfil=new Scanner(new File(filArgs));
//Naa skal jeg dele opp prosessen litt for aa faa inn funksjonaliteten for aa for eksempel sette alle ord til lowercase.
while(innfil.hasNext()){
fortelling=innfil.nextLine().toLowerCase().split(" ");
for(int i=0; i<fortelling.length; i++){
for(int j=0; j<5000; j++){
if(fortelling[i].equals(ord[j])){
antall[j]+=1;
}else if(!ord[j].equals(fortelling[i])){ //This is line 39
ord[j]=fortelling[i];
antall[j]+=1;
antUnikeOrd+=1;
}
System.out.print(fortelling[i]);
System.out.print(fortelling.length);
}
}
}
}catch(Exception e){
e.printStackTrace();
}
}
}
堆棧跟蹤:
java.lang.NullPointerException
at OrdAnalyse.analyseMetode(Oblig3A.java:39)
at Oblig3A.main(Oblig3A.java:9)
我現在已經證實,它的確是有問題的線路,雖然
堆棧跟蹤請? – tbodt
哪條特定線路獲得NPE? –
最有可能來自'ord [j] .equals(fortelling [i])'你能保證'ord'中的值不爲空。還有'ord'初始化的地方?或'antall [j]'或'antUnikeOrd' –