Код, который у меня кажется почти правильным. Ответ, который я получаю, равен 3,0, но это должно быть 2.6.Я имею Googled/посмотрел на другие ответы stackoverflow, но у меня нет исправления. Пробовал делать эту ошибку в течение 2 часов.Получение средней длины слов в предложении Java
Код:
public class Sentence { // words holds the array.
private static String[] words = {"hi","my","name","is","Bob"};
}
public String toString() { //Returns the array into Strings.
return Arrays.toString(words);
}
public double meanLength(String s) {
String wordysplit[] = toString().split(", ");
float numWords = wordysplit.length;
float totalChar = 0;
for (int i = 0; i < numWords; i++) {
totalChar += wordysplit[i].length();
}
return (totalChar/numWords);
}
public static void main(String[] args) // Really simplified this code to make it
cleaner for you guys
System.out.println("Mean word length:"+words.meanLength());
}
}
Цените всяческую помощь. Благодарю.
Просто из любопытства, что произойдет, если вы сделаете 'float numWords = wordysplit.length * 1.0;', 'totalChar + = wordysplit [i] .length() * 1.0;' и 'return ((totalChar/numWords) * 1.0; ' – npinti
Имейте в виду, что у вас есть фигурная скобка, заканчивающая ваш класс Sentence, я не думаю, что это то, что вы хотите. – alephtwo
@alephtwo Да, извините, что это была ошибка – bob9123