Como retornar vários valores de um chamador em C#

Como retornar vários valores de um chamador em C#

Ao trabalhar com C#, pode haver situações em que é necessário retornar vários valores de um método ao chamador. Isso pode ser uma ocorrência comum ao lidar com dados ou cálculos complexos e, neste artigo, exploraremos algumas das técnicas mais comuns para retornar vários valores em C#.

    • Usando o parâmetro out
    • Usando uma aula personalizada

1: Como retornar vários valores a um chamador de método em C# usando parâmetros de saída

Outra maneira de retornar vários valores em C# é usando parâmetros de saída e, nesse caso, um parâmetro out é uma variável que é passada para um método por referência e pode ser usada para retornar um valor do método, aqui está um exemplo:

usando o sistema;
Programa de classe pública

public static void main ()

int [] números = 3, 1, 4, 1, 5, 9, 2, 6, 5, 3;
int min, max;
GetMinMax (números, out min, out max);
Console.WriteLine ($ "min: min, max: max");

public static void getminMax (Int [] números, out int min, out int max)

min = números [0];
max = números [0];
para (int i = 1; i < numbers.Length; i++)

se (números [i] < min)

min = números [i];

if (números [i]> max)

max = números [i];




Neste, o método getMinmax leva uma matriz inteira como entrada junto com dois parâmetros externos para min e max. A palavra -chave externa é usada para indicar que essas variáveis ​​serão usadas para armazenar os valores de saída do método.

Dentro do método, as variáveis ​​MIN e Max são inicializadas com o primeiro valor na matriz de entrada. O método então itera os valores restantes na matriz, atualizando as variáveis ​​MIN e Max conforme necessário com base nos valores encontrados.

Finalmente, quando o método é concluído, os valores atualizados para min e max são retornados através dos parâmetros externos. No método principal, esses valores de saída são impressos no console usando o método WriteLine.

Usar a palavra -chave externa para retornar vários valores pode ser uma técnica útil em situações em que você precisa retornar mais de um valor de um método. No entanto, vale a pena notar que o uso de parâmetros out pode dificultar o código de ler e entender, principalmente ao lidar com um código mais complexo e geralmente é uma idéia melhor usar essa técnica com moderação e somente quando necessário.

2: Como retornar vários valores a um chamador de método em C# usando uma classe personalizada

Uma terceira maneira de retornar vários valores em C# é usando uma classe personalizada e para criar uma classe que contém propriedades ou campos para cada valor que você deseja retornar e depois retornar uma instância da classe do seu método, aqui está um exemplo:

usando o sistema;
namespace mynamespace

Classe pública MinmaxResult

public int min get; definir;
public int max get; definir;

Classe estática pública minmaxcalculator

public static minmaxResult getminmax (int [] números)

int min = números [0];
int max = números [0];
para (int i = 1; i < numbers.Length; i++)

se (números [i] < min)

min = números [i];

if (números [i]> max)

max = números [i];


retornar novo minmaxResult min = min, max = max;


programa de classe

estático void main (string [] args)

int [] números = 1, 2, 3, 4, 5, 6, 7, 8, 9;
Resultado minmaxResult = minmaxcalculator.GetminMax (números);
Console.WriteLine ($ "min: resultado.Min, max: resultado.Max ");



Este código C# define um espaço para nome chamado "MyNamespace", que contém duas classes: "MinmaxResult" e "MinmaxCalculator".

A classe "MinmaxResult" tem duas propriedades: "Min" e "Max", que são usadas para armazenar os valores mínimo e máximo, respectivamente.

A classe "MinMaxCalculator" é declarada como estática e possui um único método chamado "getminMax", que leva uma variedade de números inteiros como entrada. Este método usa um loop para iterar através da matriz e encontrar os valores mínimo e máximo. Em seguida, ele cria uma nova instância da classe "MinMaxResult" e inicializa suas propriedades "Min" e "Max" com os valores encontrados antes de devolvê -lo como saída do método.

Finalmente, a classe "Programa" contém um método estático chamado "Main", que é o ponto de entrada do programa e, nesse método os valores mínimo e máximo.

Conclusão

Retornar vários valores a um chamador de método em C# pode ser um recurso importante ao trabalhar com dados ou cálculos complexos. Ao entender as diferentes técnicas disponíveis para devolver vários valores, como parâmetros de saída e classes personalizadas, você pode escolher a melhor abordagem para sua situação específica. O uso dessas técnicas pode tornar seu código mais eficiente, mais fácil de ler e, finalmente, melhorar o desempenho do seu aplicativo.