日期:2014-05-20 浏览次数:20827 次
package com.java.others; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner; /** * 计算字符串的字符出现的次数 * @author lichaoever * */ public class getCount { List<String> list = new ArrayList<String>(); Scanner s = new Scanner(System.in); public getCount() { System.out.println("请输入字符:"); this.count(s.nextLine()); } private void count(String str) { char[] c = str.toCharArray(); for(char s : c) { list.add(String.valueOf(s)); } Collections.sort(list); for(String s : list) { int begin = list.indexOf(s); int end = list.lastIndexOf(s); System.out.println("字母'"+ s + "'有:"+(end - begin + 1)+"个"); } } public static void main(String[] args) { new getCount(); } }
------解决方案--------------------
import java.util.ArrayList; import java.util.List; public class B { public static void main(String[] args) { List<Integer> list = initData(); int x = list.size(); while(list.size()!=0){ List<Integer> arr = list; Integer obj = list.get(0); List<Integer> l1 = new ArrayList<Integer>(); l1.add(obj); arr.removeAll(l1); System.out.println(obj+"出现"+(x-arr.size())+"次"); x = arr.size(); } } public static List<Integer> initData(){ List<Integer> list = new ArrayList<Integer>(); list.add(1); list.add(1); list.add(2); list.add(2); list.add(3); list.add(3); list.add(3); list.add(4); list.add(4); return list; } }