Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.04.2013, 01:34   #11
Strangers
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 64
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
== и Equals одно и тоже
выведите сюда, когда они идентично выглядят и не равны
str1==??↕d,???t⌂?v?t??s?)(#?1;???|? r#Z??S?&y~x?N?? /??K♠m??◄N2?
str2==??↕d,???t⌂?v?t??s?)(#?1;???|? r#Z??S?&y~x?N?? /??K♠m??◄N2?

вот так вывод на консоль выглядит
Strangers вне форума Ответить с цитированием
Старый 27.04.2013, 01:46   #12
Strangers
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 64
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
== и Equals одно и тоже
Не совсем...
Strangers вне форума Ответить с цитированием
Старый 27.04.2013, 02:04   #13
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
Не совсем...
и в чем разница?
eval вне форума Ответить с цитированием
Старый 27.04.2013, 02:09   #14
Strangers
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 64
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
и в чем разница?
Насколько я знаю, Equals работает быстрее для коротких строк. К тому же после Java для меня вызов этого метода кажется более естественным. Ну и в случае когда, например, одна из строк будет иметь значение null, поведение Equals и == будет разным (Equals сгенерит исключение).

Ну в принципе это все конечно мелочи...
Strangers вне форума Ответить с цитированием
Старый 27.04.2013, 02:12   #15
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

а теперь смотрим на реализацию оператора
Цитата:
public static bool operator ==(string a, string b)
{
return string.Equals(a, b);
}
, и больше не порим чушь
eval вне форума Ответить с цитированием
Старый 27.04.2013, 02:26   #16
Strangers
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 64
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
а теперь смотрим на реализацию оператора
, и больше не порим чушь
Код:
bool result = false;

        object obj = "String";
        string str2 = "String";
        string str3 = typeof(string).Name;
        string str4 = "String";
        object obj2 = str3;

        // Сравнение номер 1
        result = string.Equals(obj, str2);// true
        result = String.ReferenceEquals(obj, str2); // true
        result = (obj == str2);// true

        // Сравнение номер 2
        result = string.Equals(obj, str3);// true
        result = String.ReferenceEquals(obj, str3); // false
        result = (obj == str3);// false

        // Сравнение номер 3
        result = string.Equals(obj, str4);// true
        result = String.ReferenceEquals(obj, str4); // true
        result = (obj == str4);// true

        // Сравнение номер 4
        result = string.Equals(str2, str3);// true
        result = String.ReferenceEquals(str2, str3); // false
        result = (str2 == str3);// true

        // Сравнение номер 5
        result = string.Equals(str2, str4);// true
        result = String.ReferenceEquals(str2, str4); // true
        result = (str2 == str4);// true

        // Сравнение номер 6
        result = string.Equals(str3, str4);// true
        result = String.ReferenceEquals(str3, str4); // false
        result = (str3 == str4);// true

        // Сравнение номер 7
        result = String.Equals(obj, obj2);// true
        result = String.ReferenceEquals(obj, obj2); // false
        result = (obj == obj2);// false
Вместо тысячи слов...
Strangers вне форума Ответить с цитированием
Старый 27.04.2013, 09:35   #17
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

и что тут вы хотели показать?
вы еще свои медетации проделайте с пустой строкой, тоже будет познавательно
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сравнение строк и исключение повторов в пределах 4 строк Dariloff Microsoft Office Excel 2 20.01.2013 23:33
Сравнение строк revaldo666 Общие вопросы C/C++ 6 05.12.2011 18:27
Сравнение строк Corvette Общие вопросы C/C++ 4 11.09.2011 23:42
Сравнение строк в C# Павел111 Помощь студентам 3 17.12.2010 17:26
Макрос на сравнение и подсчет в первом столбце строк, и сумирование значений этих строк в другом столбце Shpr0T Microsoft Office Excel 8 30.08.2010 17:52