Как вывести в данном случае статическую переменную?
public static int getCountTheSameLastName(Map<String, String> map, String lastName) {
//напишите тут ваш код
int countLastName = 0;
for (Map.Entry<String, String> pair : map.entrySet()) {
String key = pair.getKey();
if (key.equals(lastName)) {
countLastName++;
}
}
return countLastName;
}
public static void main (String[]args) {
System.out.println(Solution.countLastName);
}
}
Мария
10 уровень
Подскажите?!
Решен
Комментарии (14)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Alexander Kusakin Backend Developer
14 декабря 2020, 10:35
У вас переменная countLastName объявляется внутри метода, поэтому вне этого метода её не видно.
Чтобы была возможность обращаться к Solution.countLastName, надо countLastName объявить в самом классе Solution, как статическую.
0
Ksenia VolkovaJava Developer в DXCMaster
14 декабря 2020, 10:07
А где тут статическая переменная? И зачем она нужна?
0
Мария
14 декабря 2020, 10:13
Пардон! Хотелось бы увидеть сколько совпадений насчитала программа?
System.out.println(getCountTheSameLastName(), countLastName); - так тоже не принимает ((
0
Ksenia VolkovaJava Developer в DXCMaster
14 декабря 2020, 10:15
Для того чтобы получить это значение, надо просто вызвать метод getCountTheSameLastName - он же у тебя возвращает int. И результат вызова этого метода ты можешь передать на печать. Сама переменная из этого метода тебе не нужна (да она и не будет доступна за его пределами).
0
Мария
14 декабря 2020, 10:21
не понимаю, что еще надо?
System.out.println(getCountTheSameLastName());
0
Ksenia VolkovaJava Developer в DXCMaster
14 декабря 2020, 10:23
Параметры метода, вероятно )
0
Мария
14 декабря 2020, 10:50
String lastName - это понятно, а что входит в первые два параметра?
0
Ksenia VolkovaJava Developer в DXCMaster
14 декабря 2020, 10:53
В смысле - первые два? Там их всего два - мапа, в которой надо искать совпадения, и фамилия.
0
Мария
14 декабря 2020, 11:05
public class Solution {
public static Map<String, String> createMap() {
//напишите тут ваш код
Map<String, String> map = new HashMap<String, String>();
map.put("Ямная", "Мария");
map.put("Пьянкова", "Света");
map.put("Моногошева", "Люба");
....
System.out.println(getCountTheSameLastName(createMap(), "Моногошева"));
но почему в коде вывода указать именно "map" не правильно, нужно createMap()?
0
Ksenia VolkovaJava Developer в DXCMaster
14 декабря 2020, 11:08
А что такое map?
Эта переменная где-то объявлена?
0
Мария
14 декабря 2020, 11:13
это список элементов map
0
Ksenia VolkovaJava Developer в DXCMaster
14 декабря 2020, 11:36
Какой map?
Где она объявлена?
0
Мария
14 декабря 2020, 11:43
Разобралась! Поняла, в чем пробелы)) Спасибо!
0
Мария
14 декабря 2020, 10:06
System.out.println(Solution.countLastName); - эта запись не принимается компилятором.
0