如何在一行中打印出ArrayList中包含的字母?

时间:2015-04-07 10:10:43

标签: c#

这个节目打算打印出来“这个网站是输给LOL的!”但没有任何元音。

“这是一个很棒的人!”

我的问题是到目前为止我只想出了如何打印出每行一个字母,而不是一行中的整个句子。

另外,理想情况下,我应该能够从我的ArrayList中删除元音,然后在没有任何元音的情况下打印出一行中的ArrayList

string str = "This website is for losers LOL!";
ArrayList arrayOfLetters = new ArrayList();
string letter = "";
string sentence = "";

foreach (char c in str)
{
    arrayOfLetters.Add(c);
}

for(int i = 0; i < str.Length; i++)
{
    letter = arrayOfLetters[i] + "";

    if( letter.Contains("a") || letter.Contains("e") || letter.Contains("i") || letter.Contains("o") || letter.Contains("u")) 
    {
    } 
    else 
    { 
        print (letter);
    }
}

3 个答案:

答案 0 :(得分:4)

public static string RemoveVowels(this string text) {
     var vowels = "aeiou";
     return new string(text.Where(c => !vowels.Contains(c)).ToArray());
}

用法:

var text = "StackOverflow is not for losers!";
var noVowels = text.RemoveVowels();

答案 1 :(得分:0)

str.Where(l => l != 'a' && l != 'e' && l != 'i' && l != 'o' && l != 'u')
   .ToList()
   .ForEach(Console.Write);

答案 2 :(得分:0)

我目前没有可用的视觉工作室,但我希望你能看一下。应该是你在寻找什么 String.Replace