黑马程序员技术交流社区
标题:
求该代码
[打印本页]
作者:
pthuakai
时间:
2013-4-24 10:54
标题:
求该代码
本帖最后由 pthuakai 于 2013-4-24 15:51 编辑
我想得到一个字符数组中,每个元素出现的次数,但是下面的代码却没有输出。求帮忙改改代码
* public static void main(String[] args)
{
int count=0;
char[] chs={'a','b','a','c','c','e','b'};
for(int i=0;i<chs.length;i++)
{
char key=chs
;
for(int k=i+1;k<chs.length;k++)
{
while(key==chs[k])
count++;
}
System.out.println(key+count);
}
}
作者:
刘胜寒
时间:
2013-4-24 11:17
飘过.....
手写给你一个凑合着看
public static void main(String[] args)
{
int Ans[26];//大写
int ans[26];//小写
char[] chs={'a','b','a','c','c','e','b'};
for(int i=0;i<chs.length;i++)
{
char key=chs[i];
if(key>='A'&&key<'Z') Ans[key-'A']++;
else ans[key-'a']++;
}
// 打印 Ans ans
for(int i=0;i<26;i++)
System.out.print((char)(i+'A')+":"+Ans[i]+" ");
System.out.println();
//ans 同上
}
作者:
高新星
时间:
2013-4-24 11:21
class Test{
public static void main(String[] args)
{
char[] chs={'a','b','a','c','c','e','b'};
for(int i=0;i<chs.length;i++)
{
int count = 0; //不应该定义在循环外,要每次获得key的次数就归零,否则会累加
char key=chs[i];
for(int k=0;k<chs.length;k++)//此时应该遍历整个数组才能得到key在数组中的个数,否则得到的是i之后key的个数
{
if(key==chs[k])//不应该用while循环,应为条件符合的时候他就一直循环,形成了死循环,所以程序无输出;因该用if表判断
count++;
}
System.out.println(key+""+count);//输出的时候不应该直接key+count,会直接输出一个int的
}
}
}
复制代码
作者:
403383221
时间:
2013-4-24 13:36
public static void main(String[] args) {
char[] chs = { 'a', 'b', 'a', 'c', 'c', 'e', 'b' };
String a = new String(chs);
while (a.length() != 0) {
int sum = 0;
int x = 0;
String b = String.valueOf(a.charAt(x));
for (int y = 0; y < a.length(); y++) {
if (a.contains(b)) {
sum++;
y--;
a = a.replaceFirst(b, "");
}
}
System.out.println(b + "出现次数是:" + sum);
}
}
复制代码
今天在看String,就转换成String做了做{:soso_e113:}
作者:
Miss小强
时间:
2013-4-24 13:52
String str= "abdadafdadfa";
Map<String, Integer> times = new TreeMap<String, Integer>();
for (int i = 0; i < str.length(); i++) {
// 如果在里面就将次数+1;
if (times.containsKey(str.charAt(i)+"")) {
int time = times.get(str.charAt(i)+"");
times.put(str.charAt(i) + "", time + 1);
} else {
times.put(str.charAt(i) + "", 1);// 第一次存入该集合;
}
}
for (Map.Entry<String, Integer> entry : times.entrySet()) {
System.out.println("字符" + entry.getKey() + "出现" + entry.getValue()
+ "次");
}
复制代码
这是我的代码,希望可以帮到你,只要有思路,就不怕写不出代码;
作者:
pthuakai
时间:
2013-4-24 15:50
谢谢了啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2