Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
 Аватар для Serho88
11 / 11 / 8
Регистрация: 08.10.2013
Сообщений: 51

Нужен совет по List<MyClass> IndexOf

21.10.2013, 03:14. Показов 1269. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Недавно начал изучать C#, встретился с List, не могу справится с поиском индекса элемента.(Поиском наверно не умею пользоваться потому что ни чего не нашел что могло бы подсказать) Вот код:
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication1
{
    class MyClass
    {
        public string Name;
        public bool Flag;
        public MyClass(string s, bool b)
        {
            this.Name = s;
            this.Flag = b;
        }
        public MyClass()
        {
            this.Name = "";
            this.Flag = false;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            List<MyClass> list = new List<MyClass>();
            list.Add(new MyClass("Name1", false));
            list.Add(new MyClass("Name2", false));
            list.Add(new MyClass("Name3", false));
            list.Add(new MyClass("Name4", false));
            MyClass b = new MyClass("Name3", false);
            if (list.IndexOf(b) != -1)
                Console.WriteLine("Yes");
            else
                Console.WriteLine("No");
            Console.ReadKey();
        }
    }
}


Добавлено через 32 минуты
Программа выдает ответ No. Если заменить строчку
Цитата Сообщение от Serho88 Посмотреть сообщение
MyClass b = new MyClass("Name3", false);
на MyClass b=list[2], программа выдает ответ Yes.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.10.2013, 03:14
Ответы с готовыми решениями:

Как изменить свойство элемента в list? List<MyClass>
В list содержится класс MyClass у которого есть свойства, как изменить у элемента в list требуемое свойство? Например: class...

Сложный Dictionary<MyClass, Dictionary<List<MyClass2>, List<string>>> MyDictionary
Здравствуйте. Помогите plz реализовать обращения к словарю вида : Dictionary&lt;MyClass, Dictionary&lt;List&lt;MyClass2&gt;,...

List<MyClass> sort & find
Доброе утро! Не знаю в ту ли ветку пишу, так что не пинайти :) До вечера надо мне узнать! 1) Как реализовать Сорт листа, по признаку...

2
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
21.10.2013, 08:23
Первое, что нужно здесь сказать: MyClass - это ссылочный тип. Равенство экземпляров ссылочных типов определяется равенством их ссылок.
C#
1
2
// b и list[2] - одно и тоже, указывают на один и тот же объект в куче
MyClass b=list[2];
C#
1
2
3
4
// несмотря на то, что у объекта b, те же поля что и у list[2]
// это два разных объекта, и указывают на разные адреса
MyClass b = new MyClass("Name3", false);
b==list[2];  // false
Если бы MyClass был значимым типом (структурой, например), код вёл бы себя как вы ожидаете
C#
1
b==list[2];  // true
1
 Аватар для Serho88
11 / 11 / 8
Регистрация: 08.10.2013
Сообщений: 51
21.10.2013, 21:56  [ТС]
tezaurismosis, Спасибо за разъяснения. Просто немного не привычно что в основном здесь ссылочные классы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.10.2013, 21:56
Помогаю со студенческими работами здесь

Не работает динамическое заполнение List<MyClass>
Здравствуйте! Дорогие форумчане, объясните, что я делаю не так! Есть тестовая функция, динамически загружающая данные в ListView(WPF)...

Как добавить в List<MyClass> данные типа Class
Язык программирования C#! Всем добрый день! Есть такая проблема связанная со свойством типа List&lt;свой тип&gt; итак её суть! Создал...

Перебор экземпляров класса через foreach в List<MyClass>
Вроде бы элементарная задача, но что-то не так. Почему на консоль выводиться один и тот же экземпляр? Почему foreach не проходит по всем...

Как заполнить List<MyClass> случайным количеством классов наследников?
Добрый день. Что-то никак не могу сделать следующее: Есть абстрактный класс Room и классы наследники Kitchen, Bedroom, Hall, Restroom,...

Универсальное преобразование List<object> -> List<MyClass>
Пытаюсь написать нечто универсальное для преобразования сущностей из БД (таблицы) в сущности C# (классы). /// &lt;summary&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru