2014-10-30 4 views
0

Я спрашиваю это себе в течение довольно нескольких дней, и это время, как мне нужна помощь по этому ..C# Lambda с Console.Read

У меня есть пример кода, который выглядит как

int nTestCase = Convert.ToInt32(Console.ReadLine()); 
string[] inputStrings = new string[nTestCase];    

for (int i =0; i<nTestCase;i++) 
{ 
    inputStrings[i] = Console.ReadLine(); 
} 

Есть ли возможность избежать обширных для цикла здесь. Просто мысль о замене его высказываниями Лямбды?

этот вопрос может показаться сумасшедшим, но я просто хочу знать, может ли Лямбда работать с Console.Read для этого сценария?

ответ

3
int nTestCase = Convert.ToInt32(Console.ReadLine()); 
string[] inputStrings = Enumerable.Range(0, nTestCase) 
            .Select(x => Console.ReadLine()) 
            .ToArray(); 

или даже

string[] inputStrings = Enumerable.Range(0, Convert.ToInt32(Console.ReadLine())) 
            .Select(x => Console.ReadLine()) 
            .ToArray(); 
+0

Также стоит отметить, что терминология OP является полностью сломана – zerkms

+0

Отлично. Просто кусок кода, который я искал :) Спасибо! – Bharathi

+0

@zerkms: Не могли бы вы объяснить * как * вопрос терминологии OP «полностью нарушен»? – stakx

Смежные вопросы