Created
December 7, 2015 09:25
-
-
Save ProZhar/efc0c1b6f3da489032d5 to your computer and use it in GitHub Desktop.
com.javarush.test.level10.lesson11.home09
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| package com.javarush.test.level10.lesson11.home09; | |
| import java.io.BufferedReader; | |
| import java.io.InputStreamReader; | |
| import java.util.ArrayList; | |
| import java.util.HashMap; | |
| import java.util.Map; | |
| /* Одинаковые слова в списке | |
| Ввести с клавиатуры в список 20 слов. Нужно подсчитать количество одинаковых слов в списке. | |
| Результат нужно представить в виде словаря Map<String, Integer>, где первый параметр – уникальная строка, | |
| а второй – число, сколько раз данная строка встречалась в списке. | |
| Вывести содержимое словаря на экран. | |
| В тестах регистр (большая/маленькая буква) влияет на результат. | |
| */ | |
| public class Solution | |
| { | |
| public static void main(String[] args) throws Exception | |
| { | |
| BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); | |
| ArrayList<String> words = new ArrayList<>(); | |
| for (int i = 0; i < 20; i++) | |
| { | |
| words.add(reader.readLine()); | |
| } | |
| Map<String, Integer> map = countWords(words); | |
| for (Map.Entry<String, Integer> pair : map.entrySet()) | |
| { | |
| System.out.println(pair.getKey() + " " + pair.getValue()); | |
| } | |
| } | |
| public static Map<String, Integer> countWords(ArrayList<String> list) | |
| { | |
| HashMap<String, Integer> result = new HashMap<>(); | |
| for(int i =0; i<list.size(); i++){ | |
| //берем i по счету слово | |
| int count = 0; // наш счетчик повторений | |
| String words = list.get(i); // присваиваем его words | |
| for (String aList : list) | |
| { | |
| if (words.equals(aList)) | |
| { //сравниваем words со списком, если идентичное +1 в счетчик | |
| count++; | |
| } | |
| } | |
| result.put(list.get(i), count); // кладем слово и показатель счетчика | |
| } | |
| return result; | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment