|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
День добрый уважаемые знатоки, Код: java 1. 2.
При печати на консоль обе дают 0 но условие не срабатывает даже если прописываю Код: java 1.
toString - становится серым, так как он уже строковой даже subject.getNumber()=="0" не срабатывает, хотя в консоли subject.getNumber() дает результат 0 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2020, 06:51 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
Код: java 1.
Через == ты сравниваешь ссылки. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2020, 07:35 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
crutchmaster, Большое Огромное спасибо!!!! Вы мне нервы спасли!!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
20.02.2020, 07:57 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
Romantiktj,можешь положить эти переменные в пул и будет давать true добавь .intern() ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2020, 19:41 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
iJava добавь .intern() ... |
|||
:
Нравится:
Не нравится:
|
|||
21.02.2020, 19:47 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
Basil A. Sidorov iJava добавь .intern() Этот совет далеко не вредный, а даст понимание происходящего. Вот набросал наглядный пример Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2020, 11:33 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
iJava, это неявно и неочевидно, для пазлерсов сойдет. за юз такого в реальном продукте надо палкой бить. хочешь сравнивать объекты через равно - юзай скалу там == просто переопределен .equals-ом )) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.02.2020, 12:44 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
andreykaT, андрейка ты вопрос автора читал? он не понимает как устроена память ,что такое пул я дал ему наглядный пример- который даст минимальное понимание ситуации это очень интересная тема и вот так с бухты барахты ее пройти не получится но к сожалению к реальному программованию она никого отнощения не имеет) я даже больше скажу -весь энтерпрайз - это уже по сути не джава программрование - а работа машиниста-наборщика))) ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2020, 22:59 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
Вот всем еще в тему. Подумайте. Код: java 1. 2. 3.
Код: java 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 13:13 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
iJava andreykaT, андрейка ты вопрос автора читал? он не понимает как устроена память ,что такое пул я дал ему наглядный пример- который даст минимальное понимание ситуации это очень интересная тема и вот так с бухты барахты ее пройти не получится но к сожалению к реальному программованию она никого отнощения не имеет) я даже больше скажу -весь энтерпрайз - это уже по сути не джава программрование - а работа машиниста-наборщика))) Сам-то с передачей объектов по ссылке/по значению разобрался? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2020, 15:42 |
|
почему выражение не становится true
|
|||
---|---|---|---|
#18+
Romantiktj, We need to understand 2 things here :- 1. In java every String created is an object. So if we create 2 different strings then they are allocated different memory locations(In few cases different strings will be given same memory location. Read about 'string pool' to understand this) 2. When we compare objects using '==' then memory address of objects is compared rather than the actual value. So, when you write previous="0" and subject . getNumber () then both will have "0" value but there memory allocation will be different. As a result, on comparison it will return false. If you want to compare 2 strings then always use below 'equals()' method:- if ( previous.equals(subject . getNumber ()) == true) The above statement will return true. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2020, 16:13 |
|
|
start [/forum/topic.php?fid=59&fpage=15&tid=2120781]: |
0ms |
get settings: |
18ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
14ms |
get forum data: |
2ms |
get page messages: |
364ms |
get tp. blocked users: |
2ms |
others: | 304ms |
total: | 766ms |
0 / 0 |