Переключение между двумя объектами в списке С#C#

Место общения программистов C#
Anonymous
Переключение между двумя объектами в списке С#

Сообщение Anonymous »

Я пытаюсь отсортировать массив объектов Student в алфавитном порядке по имени и поменять местами два объекта в списке. Однако после замены я заметил, что объекты иногда кажутся идентичными, и не знаю, как этого избежать.

Код: Выделить всё

for(int i = 0; i < this.lastPosition; i++)
{
if(this.list[i].GetName().CompareTo(this.list[i+1].GetName()) > 0) {
Student temp = this.list[i];
this.list[i] = this.list[i+1];
this.list[i+1] = temp;
}
}
Перед сортировкой:

Код: Выделить всё

Rina 034377281 Parent: Rozz 044377281
Bina 034377281 Parent: Rozz 044377281
Cina 034377281 Parent: Noa 050569126
После сортировки:

Код: Выделить всё

Bina 034377281 Parent: Rozz 044377281
Cina 034377281 Parent: Noa 050569126
Cina 034377281 Parent: Noa 050569126
Это объект StudentList:

Код: Выделить всё

public class StudentList
{
public const int MaxStudent = 38;
private Student[] list;
private int lastPosition;
И есть Студент:

Код: Выделить всё

public class Student
{
private string name;
private string phoneNum;
Parent parent;
Буду признателен за вашу помощь.

Подробнее здесь: https://stackoverflow.com/questions/790 ... st-c-sharp

Вернуться в «C#»