Я прятался здесь некоторое время, но столкнулся с проблемой, которую не могу решить в некоторых программах на Java, которые я пишу для назначения.Могу поспорить, что их не слишком сложно выяснить, но я просто не понимаю.
Я получаю ошибки в соответствии с этим:
RugbyTeamLadderEditor.java:125: cannot find symbol
symbol : method findAveragePoints(java.util.ArrayList<RugbyTeam>)
location: class RugbyTeamLadderEditor
double averagePointsToBePrinted = findAveragePoints(rugbyTeams);
У меня естьтри класса, и из класса с основным методом (RugbyTeamLadderEditor) я могу вызвать класс конструктора, но не другой класс, в котором есть некоторые методы (Part1).Должен ли я что-то делать с пакетами?- все, что я знаю, это то, что я ничего не узнал о пакетах в этом вводном курсе программирования, который я делаю, и я не уверен, как они будут получены, если я буду их использовать.
Мойкод состоит из пары сотен строк, поэтому я поместил их в pastebin - надеюсь, я не нарушил никаких ложных действий, выполнив следующее: / Каждый класс находится в своем собственном файле .java.
http://pastebin.com/FrjYhR2f
Ура!
РЕДАКТИРОВАТЬ: несколько фрагментов моего кода:
В RugbyTeamLadderEditor.java:
// if the identification number is equal to 5, then print out the average points of all of the teams in the ArrayList
else if (identificationNumber == 5)
{
double averagePointsToBePrinted = findAveragePoints(rugbyTeams);
}
В Part1.java:
/**
* This method takes a RugbyTeam ArrayList and returns a
* double that represents the average of the points of all
* of the rugby teams
*/
public static double findAveragePoints(ArrayList<RugbyTeam> rugbyTeams)
{
// If there are no objects in the ArrayList rugbyTeams, return 0
if (rugbyTeams.size() == 0)
return 0;
// Declare a variable that represents the addition of the points of each team;
// initialise it to 0
double totalPoints = 0;
// This is a code-cliche for traversing an ArrayList
for (int i = 0; i < rugbyTeams.size(); i++)
{
// Find then number of points a team has and add that number to totalPoints
RugbyTeam r = rugbyTeams.get(i);
totalPoints = totalPoints + r.getPoints();
}
// Declare a variable that represents the average of the points of each teams,
// i.e. the addition of the points of each team divided by the number of teams
// (i.e. the number of elements in the ArrayList); initialise it to 0
double averagePoints = totalPoints / rugbyTeams.size();
return averagePoints;
}
Это еще не совсем закончено - мне все еще нужно вставить оператор print, чтобы напечатать этот дубль, но пока это не имеет значения, потому что я не могу заставить этот дубль принять значение.