2012-08-01 20 views
5

Así que tengo el código aquí:C# Llamar a una función con múltiples valores

int n; 
public static void Main(string[] args) 
    { 
     Console.Write("Please insert a number : "); 
     n = int.Parse(Console.ReadLine()); 
     Console.Write("Please insert wait time (0,1 or 2) : "); 
     int time = int.Parse(Console.ReadLine())*1000;    
     Calculate(n,time);      
    } 

¿Cuál es el mejor método para que llame a la Calcular (n, tiempo) función para varios valores de n (dados uno tras otro), pero al mismo tiempo. Ya pensé en usar una matriz para almacenar múltiples valores de n, pero ¿hay una mejor opción?

También me gustaría transmitir múltiples n de que como argumentos de la línea de comandos.

¿Alguna idea? ¡Gracias de antemano!

+0

Si necesita sólo varios valores de n y luego tupla puede ser mejor que la matriz. –

Respuesta

7

Usted sólo tiene que utilizar params atributo.

public void Calculate(time, params int[] parameters){ ... } 

Esto permitirá llamar:

Calculate(time, 1, 2, 3, 4, 5, 6, ....) 

En función se puede repetir:

foreach(int item in parameters){} 
0

Una matriz debe funcionar a la perfección.

public void Calculate(int[] numbers, int time) 
{ ... } 

También con LINQ puede realizar una selección distinta de la matriz:

Calculate(n.Distinct().ToArray(), time); 
1
// 
private void Calculate(int int_value, param int[] int_array_value) 
{ 
` enter code here`// your code goes here 
} 
Cuestiones relacionadas