import
java.util.
*
;
@SuppressWarnings( " unchecked " )
public class Test
{
// 找出重复次数最多的字符,并打印出数量和字符
public static void main(String[] args)
{
String a = "aaabbdcfeeswdfttrrccaa";
List ls = new LinkedList();
Test test = new Test();
for (int i = 0; i < a.length(); i++)
{
if (!test.isHave(ls, (a.charAt(i) + "")))
{
ls.add(a.charAt(i) + "");
}
}
// 保存相应的位置的字母的个数
int[] ret = new int[ls.size()];
// 最大数
int max = 0;
for (int i = 0; i < ls.size(); i++)
{
ret[i] = test.getNum(ls.get(i).toString(), a);
if (ret[i] > max)
{
max = ret[i];
}
}
// 检查个数最大的,返回位置列表
List ls2 = new LinkedList();
for (int i = 0; i < ret.length; i++)
{
if (ret[i] == max)
{
ls2.add(i + "");
}
}
// 遍历ls2,打印出相应字母和个数
System.out.println("\n打印出个数最多的字母及个数:");
for (int i = 0; i < ls2.size(); i++)
{
int m = Integer.parseInt(ls2.get(i).toString());
System.out.println("字母:" + ls.get(i).toString() + " 个数:" + ret[m]);
}
System.out.println("\n打印出所有字母及个数:");
for (int i = 0; i < ret.length; i++)
{
System.out.println("字母:" + ls.get(i).toString() + " 个数:" + ret[i]);
}
}
// 查询该列表 ls 是否有该字符
private boolean isHave(List ls, String k)
{
boolean flag = false;
for (int i = 0; i < ls.size(); i++)
{
if (ls.get(i).toString().equals(k))
{
flag = true;
break;
}
}
return flag;
}
// 查询 a 中有几个 k
private int getNum(String k, String a)
{
int j = 0;
for (int i = 0; i < a.length(); i++)
{
if ((a.charAt(i) + "").equals(k))
{
j++;
}
}
return j;
}
}
@SuppressWarnings( " unchecked " )
public class Test
{
// 找出重复次数最多的字符,并打印出数量和字符
public static void main(String[] args)
{
String a = "aaabbdcfeeswdfttrrccaa";
List ls = new LinkedList();
Test test = new Test();
for (int i = 0; i < a.length(); i++)
{
if (!test.isHave(ls, (a.charAt(i) + "")))
{
ls.add(a.charAt(i) + "");
}
}
// 保存相应的位置的字母的个数
int[] ret = new int[ls.size()];
// 最大数
int max = 0;
for (int i = 0; i < ls.size(); i++)
{
ret[i] = test.getNum(ls.get(i).toString(), a);
if (ret[i] > max)
{
max = ret[i];
}
}
// 检查个数最大的,返回位置列表
List ls2 = new LinkedList();
for (int i = 0; i < ret.length; i++)
{
if (ret[i] == max)
{
ls2.add(i + "");
}
}
// 遍历ls2,打印出相应字母和个数
System.out.println("\n打印出个数最多的字母及个数:");
for (int i = 0; i < ls2.size(); i++)
{
int m = Integer.parseInt(ls2.get(i).toString());
System.out.println("字母:" + ls.get(i).toString() + " 个数:" + ret[m]);
}
System.out.println("\n打印出所有字母及个数:");
for (int i = 0; i < ret.length; i++)
{
System.out.println("字母:" + ls.get(i).toString() + " 个数:" + ret[i]);
}
}
// 查询该列表 ls 是否有该字符
private boolean isHave(List ls, String k)
{
boolean flag = false;
for (int i = 0; i < ls.size(); i++)
{
if (ls.get(i).toString().equals(k))
{
flag = true;
break;
}
}
return flag;
}
// 查询 a 中有几个 k
private int getNum(String k, String a)
{
int j = 0;
for (int i = 0; i < a.length(); i++)
{
if ((a.charAt(i) + "").equals(k))
{
j++;
}
}
return j;
}
}