Софтуерно Инженерство
Loading...
bety_1988 avatar bety_1988 49 Точки

[Java Syntax] - GetFirstOddOrEvenElements

Зравейте колеги! Моля Ви за мнение по една от задачите от домашното Java Syntax. Това е кодът ми: http://pastebin.com/AipicDr4

Въпросът ми е дали съм структурирала правилно и четимо метода - като резултат получавам верен отговор, но реших сама да прочета предварително колкото може от материала и да реша някоя и друга задача. Моля ви да дадете мнение и ако нещо не е както трябва да се коригирам. Предварително благодаря!

Тагове:
0
Java Advanced
kaloyannikov avatar kaloyannikov 528 Точки

Реших да не пускам нова тема при положение , че имам проблем на тази задача .

http://pastebin.com/1cNAvCrn

Не разбирам защо не ми влиза в if-овете и дефакто не прави нищо ?

0
29/02/2016 15:02:38
deyan.zhekov avatar deyan.zhekov 159 Точки

Здравей,

сравнението на обекти в Java става посредством .equals методите им - == сравнява референции, докато equals сравнява стойностите в обекта (в случай, че е Override-нат по този начин). String е обект и е коректно да направиш:

"odd".equals(commandSplitted[2])

вместо:

commandSplitted[2]=="odd"

Сравнението с == ще сработи само в частен случай, в който двете референции сочат към един и същ обект, което за String може да се получи освен след присвояване и след статично задаване от типа String example = "example". Последното сработва понеже JVM-а пази string обекти и насочва референцията към вече съществуващи такива (не важи за new String(), който изрично създава нов обект). Това е възможно поради факта, че string е immutable и няма риск от промяна на обекта, а от друга страна се прави намаляване на използваната памет поради преизползването на обектите.

1