java - String equals and == with String concatnation -



java - String equals and == with String concatnation -

i trying understand string concatenation output of string compare. clear, have class compare 2 strings using == , equals. trying concat output of == , equals() string. output of equals() concats, output of == does not concat. using boxing feature of java, boolean concated string contact. both equals , == returns boolean knowledge. why difference? can 1 explain on this?

public class stringhandler { public void comparestrings() { string s1 = new string("jai"); string s2 = "jai"; string s3 = "jai"; system.out.println("object , literal compare double equal :: " + s1 == s2); system.out.println("object , literal compare equals :: " + s1.equals(s2)); system.out .println("literal compareing double equal :: " + s2 == s3); system.out.println("literal compareing equals :: " + s2.equals(s3)); } public static void main(string[] args) { stringhandler shandler = new stringhandler(); shandler.comparestrings(); } }

output

false object , literal compare equals :: true false literal compareing equals :: true

update: answer

without parenthesis s1==s2, jvm compares string "object , literal compare double equal :: jai" == "jai" , result false. actual content in sysout not printed. when parenthesis added jvm compares string "jai" == "jai" , result

object , literal compare double equal :: true

when do

system.out.println("object , literal compare double equal :: " + s1 == s2);

you first concatenating string "object , literal compare double equal :: " string s1, give

"object , literal compare double equal :: jai"

then, checking if string same object (same reference) s2:

"object , literal compare double equal :: jai" == "jai"

which false (the output false).

in other words, it's because operators precedence. 1 way "manipulate" operators precedende utilize parentheses. operations within parentheses parsed first:

system.out.println("object , literal compare double equal :: " + (s1 == s2));

java string equals string-concatenation

Comments

Popular posts from this blog

model view controller - MVC Rails Planning -

ruby on rails - Devise Logout Error in RoR -

html - Submenu setup with jquery and effect 'fold' -