https://e-tutor.itsa.org.tw/e-Tutor/mod/programming/view.php?id=2691
| import java.util.*; |
| |
| public class Main { |
| |
| public static void main(String[] args) { |
| Scanner scn=new Scanner(System.in); |
| String str=""; |
| while(scn.hasNext()) { |
| str+=scn.nextLine()+" "; |
| } |
| str=str.replaceAll("[,.;?!-]", ""); |
| String arr[]=str.split(" "); |
| ArrayList<String> list = new ArrayList<String>(); |
| ArrayList<Integer> count = new ArrayList<Integer>(); |
| int j=0; |
| for(int i=0;i<arr.length;i++) { |
| if(arr[i].equals("")) |
| continue; |
| for(j=0;j<list.size();j++) { |
| if(list.get(j).toLowerCase().equals(arr[i].toLowerCase())) { |
| count.set(j, count.get(j)+1); |
| break; |
| } |
| } |
| if(j==list.size()) { |
| list.add(arr[i]); |
| count.add(1); |
| } |
| } |
| for(int i=0;i<list.size();i++) { |
| System.out.println(list.get(i)+" : "+count.get(i)); |
| } |
| } |
| |
| 作者:1010 |
| 時間:西元 2018 年3 月 */ |
| } |
| |
題目有說道要去除標點符號,所以利用字串取代(replaceAll)將遇到的標點符號改為空字串,之後再使用字串切割(split)將字串切成陣列,最後在陣列走訪依序的計算每個單字的數量,比對單字是否存在時可以統一將單字轉成小寫(toLowerCase)