2017-02-17 2 views
-7

привет попытаться сделать randomnumber приложений и я пытаюсь вернуть значение массива, но я получил ошибкукак вернуть значение как объект массива

только присваивание, вызов, увеличение, уменьшение, Await и новые выражения объекта могут быть использованы как заявление

на b[group.Key + group.Count()];

public int[] twodigi(int number) 
    { 
     Random random = new Random(); 
     int var = Convert.ToInt32(number); 
     int[] a = new int[var]; 


     for (int i = 0; i < var; i++) 
     { 
      int randomnumber = random.Next(10, 100); 
      a[i] = randomnumber; 
     } 

     var groups = a.GroupBy(v => v).OrderByDescending(g => g.Count()); 
     int[] b; 
     foreach (var group in groups) 
     { 
      b[group.Key + group.Count()]; 
     } 

     return b; 
    } 
+2

_ «Я получил ошибку» _ Что это? – JLRishe

+1

'int var = Convert.ToInt32 (number);' Это кажется бессмысленным ... даже при условии, что допустимое имя переменной. –

+0

@JaydipJ 'var' - это не ключевое слово в C# ... вы можете смешивать его с другим языком. Это [* контекстное ключевое слово *] (https://msdn.microsoft.com/en-us/library/the35c6y.aspx) и может использоваться в данном контексте совершенно нормально. 'var var = 3;' –

ответ

1

Надеется, что вы можете попробовать, как это:

return a.GroupBy(v => v).Select(x=> x.Key + x.Count()).ToArray(); 

Если вы ожидаете суммы каждого ключа и количества элементов, связанных с этими ключами в массиве результатов. Пожалуйста Переход через эту example, и дайте мне знать ваш результат отличается от этого:

метод подписи будет изменен следующим образом:

public static int[] twodigi(int number) 
{ 
    Random random = new Random();  
    int[] a = new int[number]; 
    for (int i = 0; i < number; i++) 
    {   
     a[i] = random.Next(10, 100); 
    } 

     return a.GroupBy(v => v).Select(x=> x.Key + x.Count()).ToArray(); 
} 
+0

спасибо, что работа для меня – kanabut

+0

Прохладный HAppy, чтобы помочь вам ........! –

0

Как показали другие, ваша проблема здесь:

int[] b; 
    foreach (var group in groups) 
    { 
     // What do you actually want to do with this? 
     b[group.Key + group.Count()]; 
    } 

Компилятор сообщает вам, что непонятно, что вы намерены использовать для этого.

Кроме того, b никогда не инициализируется.

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