62,615
社区成员
发帖
与我相关
我的任务
分享
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+",");
}
}
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;
}
}