Сортировка Arraylist, который содержит элементы типа класса Hospital - C#

Узнай цену своей работы

Формулировка задачи:

У меня есть ArrayList , который содержит элементы типа класса Hospital, как мне написать метод сортировки ArrayList по полю типа double Salary

Листинг программы
  1. private ArrayList arrayList;

Решение задачи: «Сортировка Arraylist, который содержит элементы типа класса Hospital»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Collections;
  6.  
  7. namespace ConsoleApplication8
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             ArrayList myList = new ArrayList()
  14.             {
  15.                 new Hospital(){Salary=2,myField1=2,myField2=4},
  16.                 new Hospital(){Salary=0,myField1=4,myField2=1},
  17.                 new Hospital(){Salary=4,myField1=3,myField2=9}
  18.             };
  19.  
  20.             Console.WriteLine("Неотсортированный массив:");
  21.             foreach (Hospital h in myList)
  22.                 Console.WriteLine("Salary: {0}, myField1: {1}, myField2: {2}",
  23.                     h.Salary, h.myField1, h.myField2);
  24.  
  25.             myList.Sort();
  26.  
  27.             Console.WriteLine("\nОтсортированный массив:");
  28.             foreach (Hospital h in myList)
  29.                 Console.WriteLine("Salary: {0}, myField1: {1}, myField2: {2}",
  30.                     h.Salary, h.myField1, h.myField2);
  31.             Console.ReadLine();
  32.  
  33.         }
  34.     }
  35.     public class Hospital:IComparable
  36.     {
  37.         public double Salary { get; set; }
  38.         public double myField1 { get; set; }
  39.         public double myField2 { get; set; }
  40.  
  41.         public int CompareTo(object obj)
  42.         {
  43.             if (this.Salary > ((Hospital)obj).Salary)
  44.                 return 1;
  45.             if (this.Salary < ((Hospital)obj).Salary)
  46.                 return -1;
  47.             else
  48.                 return 0;
  49.         }
  50.     }
  51. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.7 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы