Имеется массив из переменных
double[] sort = new double[] { temp1, temp2, temp3, temp4, temp5, temp6}
Переменные уже имеют значение. Далее я произвожу сортировку. Какой функцией можно вывести имя первой переменной в массиве после сортировки?
Как вариант: использовать Dictionary, где ключ - значение переменное, значение - имя переменное, пример для вашего примера:
double d1 = 1.1d;
double d2 = 1d;
double d3 = -1.5d;
double d4 = 2d;
Dictionary<double, string> names = new Dictionary<double, string>
{
[d1] = nameof(d1),
[d2] = nameof(d2),
[d3] = nameof(d3),
[d4] = nameof(d4)
};
double[] sort = new double[] { d1, d2, d3, d4 }.OrderBy(x => x).ToArray();
Console.WriteLine($"First element: {sort[0]}, name: {names[sort[0]]}"); //-1.5 d3
вот такой трюк:
double[] sort = new double[] { 6, 5, 1, 2, 4, 3 };
int count = sort.Count();
int[] index = new int[count];
for (int i = 0; i < count; i++)
index[i] = i; //заполняю массив соответствия
Array.Sort(sort, index);
for (int i = 0;i< count; i++)
{
Console.WriteLine($"sort: {sort[i]}; index: {index[i]}");
}
Console.ReadLine();
массив index
указывает на каком индексе находилось значение
целевой массив сортируется - сохрани его раньше если он нужен
Этого сделать нельзя.
Переменная- это фикция нужная нам для удобного чтения кода. После компиляции в IL-коде не хранятся названия переменных(кроме, например, полей класса.).
Виртуальный выделенный сервер (VDS) становится отличным выбором
Еще рас всем доброго времени суток Возникла такая проблема (WPF)Есть обработчик нажатия, он выполняется, то есть запускает файл на установку,...