2015-06-18 101 views
2

如何使用C#将字符串拆分为一个唯一字符数组?将一个字拆分为一个唯一字母数组

我知道下面的代码分割字符串到一个数组,但不会挑选出独特的字符:

string s = "robot"; 
char[] charArray = s.ToCharArray(); 
for (int i = 0; i < charArray.Length; i++) 
{ 
Console.WriteLine(charArray[i]); 
} 
+1

通过“独特角色”,你的意思是“只有在字符串中出现一次字符”? – cubrr

回答

5

这样做是很容易使用LINQ:

char[] charArray = s.ToCharArray().Distinct().ToArray() 
+4

你可以这样做:'char [] charArray = s.Distinct()。ToArray()' – AzNjoE

+0

@AzNjoE只是懒惰,复制和粘贴;-) – Oscar

0

字符[] charArrayNoDupes = charArray.Distinct()。ToArray();

0

可能不是一个最好的解决方案,但尝试排序数组,然后打印

string s = "robot"; 
char[] charArray = s.ToCharArray(); 
Array.Sort(charArray); 
char c = '9'; 
for (int i = 0; i < charArray.Length; i++) 
{ 
    if(c != charArray[i]) 
    Console.WriteLine(charArray[i]); 

    c = charArray[i]; 
} 
相关问题