Array.sort меняет ссылки в C #? - PullRequest
1 голос
/ 28 апреля 2010

В моем коде C # у меня есть массив объектов. И многие из этих объектов упоминаются в другом классе. Если для сортировки этого массива объектов используется метод Array.sort, то повлияет ли это на эти ссылки? Это то же самое для массивов и списков?

Ответы [ 2 ]

7 голосов
/ 28 апреля 2010

Нет, это ни на что не повлияет. Важно понимать, что у вас нет на самом деле массива объектов. У вас есть массив ссылок . Поэтому, если у вас есть объекты A и B, тогда массив может содержать ссылки на A и B. Когда вы сортируете массив, эти ссылки могут изменить порядок - но сами объекты не изменятся. Все, что иначе , имеющее ссылку на объекты, не увидит никаких изменений только потому, что вы перетасовываете ссылки.

Другими словами: предположим, у вас есть список покупок, которые вы хотите получить. Вы можете отсортировать список покупок, чтобы упорядочить его по порядку. Это не меняет места расположения предметов и не меняет чей-либо список покупок.

5 голосов
/ 28 апреля 2010

Нет, это не повлияет на ссылки в других классах. То же самое для списков.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...