Сортировка списка list - C# (179274)
Формулировка задачи:
Здравствуйте, знатоки !
Нашел код приведенный ниже на msdn, свою задачу он выполняет - сортирует список по именам XE1, XE2,....XO1, XO2, но мне нужно, чтобы после сортировки списка по именам можно было обратиться к PartId, и он был при этом типа int, а здесь он определен как string, определить его как int, что-то не получается.
using System; using System.Collections.Generic; public class Part : IComparable<Part>, IEquatable<Part> { public string PartName { get; set; } public int PartId { get; set; } public override string ToString() { return PartId.ToString(); } public int CompareTo(Part comparePart) { // A null value means that this object is greater. if (comparePart == null) return 1; else return this.PartId.CompareTo(comparePart.PartId); } public override int GetHashCode() { return PartId; } public bool Equals(Part other) { if (other == null) return false; return (this.PartId.Equals(other.PartId)); } } public class Example { public static void Main() { // Create a list of parts. List<Part> parts = new List<Part>(); parts.Add(new Part() { PartName = "XE4", PartId = 1434 }); parts.Add(new Part() { PartName = "XE2", PartId = 1234 }); parts.Add(new Part() { PartName = "XE3", PartId = 1534 }); ; parts.Add(new Part() { PartName = "XO3", PartId = 1634 }); ; parts.Add(new Part() { PartName = "XE1", PartId = 1444 }); parts.Add(new Part() { PartName = "XO2", PartId = 1534 }); parts.Add(new Part() { PartName = "XO1", PartId = 1434 }); parts.Sort(delegate(Part x, Part y) { if (x.PartName == null && y.PartName == null) return 0; else if (x.PartName == null) return -1; else if (y.PartName == null) return 1; else return x.PartName.CompareTo(y.PartName); }); foreach (Part aPart in parts) { Console.WriteLine(aPart); } Console.ReadKey(); }
Решение задачи: «Сортировка списка list»
textual
Листинг программы
public int PartId { get; set; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д