Sto lavorando su un problema e io sono molto attaccato perché sto solo cominciando a imparare Java. Qualsiasi aiuto che riesca a capire sarà fantastico. Devo scrivere un programma che ha due classi. La classe principale leggerà da un file e usa la seconda classe per scoprire come possono essere ripetute le volte le stesse parole nel file e aggiungerle a un array che contenga le parole e il numero di volte in cui la parola è stata ripetuta. Sto bene leggendo la parte del file. Non riesco proprio a spiegarmi come chiamare un metodo dalla seconda classe per aggiungere la parola nell'array e incrementare il contatore. Ecco il mio codice finora se lo esegui vedrai quanto sono nuovo per questo da quanti errori otterrai.java chiamare un metodo da un'altra classe
import java.io.*;
public class Words{
public static void main (String [] args)
{
ProcessInput();
System.out.println("\nprogram finished");
}
public static WordList ProcessInput()
{
BufferedReader inputFile;
String inputLine;
String[] word;
WordList words;
try
{
inputFile=new BufferedReader(new FileReader ("inputFile.txt"));
inputLine = inputFile.readLine();
while (inputLine !=null)
{
word=inputLine.toLowerCase().split(" ");
for (int i=0; i<word.length; i++){
System.out.println (word[i]);
words=addWord(word[i]);
}
inputLine = inputFile.readLine();
}
inputFile.close();
}
catch (IOException ioe)
{
System.out.println (ioe.getMessage());
ioe.printStackTrace();
}
return words;
}
}
class WordList {
String [] words;
int wordcount;
public WordList (){
words= new String [1000];
wordcount=0;
}
public String addWord (String word) {
words[wordcount]=word;
wordcount=+1;
return words[wordcount];
}
public void printList(){
for (int i=0; i<wordcount; i++){
System.out.println (words[i]);
}
}
}
Grazie, che ha aiutato un sacco – blackStar
mi sembra che manchi qualcosa: cosa sarebbe impedirgli di chiamare 'list.addWord (...)'? È un metodo su una classe completamente separata. Con questa logica, non dovrebbe essere in grado di chiamare 'System.out.println', dato che si tratta di un metodo non statico, giusto? – StriplingWarrior
Hai ragione, non sono del tutto sicuro del motivo per cui ho messo la risposta lì. Volevo dire che forse 'ProcessInput' non ha bisogno di essere un metodo statico. – charlemagne