cha[]问题~~~~~求助

jingulang 2008-06-12 06:14:44
char[] c = {'a','a','c','d','b','c','b',,'b','a'};

只要出现过的元素就放进char[] r里,重复的不能放进去。

结果是char[] r = {'a','b','c','d'};
...全文
122 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wang_qing_2008 2008-06-13
  • 打赏
  • 举报
回复
HashMap
墨水鱼 2008-06-13
  • 打赏
  • 举报
回复

import java.util.Set;
import java.util.TreeSet;

public class Test {
public static void main(String[] args) {
char[] c = { 'a', 'a', 'c', 'd', 'b', 'c', 'b', 'b', 'a' };
Set<Character> set = new TreeSet<Character>();
for(Character ch:c)
set.add(ch);
Character[] r = set.toArray(new Character[0]);
for(Character ch:r)
System.out.print(ch+",");
}
}
xql80329 2008-06-13
  • 打赏
  • 举报
回复
我空间上有个set用法例子
LZ可以去看看
http://hi.baidu.com/xhz12345/blog/item/83981e12081d6bcbc2fd7814.html
xql80329 2008-06-13
  • 打赏
  • 举报
回复
1.最简单用 Set容器
2.就是用过滤器了
goosman 2008-06-13
  • 打赏
  • 举报
回复
把这玩意儿一个一个拿出来装到SET中,然后一个一个拿出来,装到char[] r中?
hmsuccess 2008-06-12
  • 打赏
  • 举报
回复
可以试试HashMap
ivan_town 2008-06-12
  • 打赏
  • 举报
回复
学习了
craky 2008-06-12
  • 打赏
  • 举报
回复

import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;

public class Test
{
public static void main(String[] args)
{
char[] c = {'a','a','c','d','b','c','b','b','a'};
char[] ret1 = change1(c);
char[] ret2 = change2(c);

for(char ch: ret1)
{
System.out.println(ch);
}

for(char ch: ret2)
{
System.out.println(ch);
}
}

/**
* 筛选的结果是按插入的顺序排序的
* @param chs 源字符数组
* @return 结果字符数组
*/
public static char[] change1(char[] chs)
{
List<Character> list = new ArrayList<Character>();

for(char ch: chs)
{
if(!list.contains(ch))
{
list.add(ch);
}
}

char[] ret = new char[list.size()];

for(int i = 0; i < list.size(); i++)
{
ret[i] = list.get(i);
}

return ret;
}

/**
* 筛选的结果是按自然顺序排序的(即字典排序)
* @param chs 源字符数组
* @return 结果字符数组
*/
public static char[] change2(char[] chs)
{
Set<Character> set = new TreeSet<Character>();

for(char ch: chs)
{
set.add(ch);
}

char[] ret = new char[set.size()];
int index = 0;

for(char ch: set)
{
ret[index++] = ch;
}

return ret;
}
}
Sou2012 2008-06-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 kekeemx 的回复:]
利用SET的不可重复特性即可解决楼主的问题.
[/Quote]
J_Factory 2008-06-12
  • 打赏
  • 举报
回复
用map装入,在转换成数组。。。
kekeemx 2008-06-12
  • 打赏
  • 举报
回复
利用SET的不可重复特性即可解决楼主的问题.

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧