Question

1.
2.
3.
4.
Answer (Detailed Solution Below)

Option 2 : s1 == s2

Advertisement

Detailed Solution

सही उत्तर s1 == s2 है।

Key Points
Helpful?
PrepSnapprepsnap.in • Part -A

Question:

Consider the Java code: String s1 = "java"; String s2 = "ja" + "va"; String s3 = new String("java"); Which comparison evaluates to true? / Java कोड पर विचार करें: String s1 = "java"; String s2 = "ja" + "va"; String s3 = new String("java"); कौन-सी तुलना true मूल्यांकित होती है?

1.
s1 == s3
2.
s1 == s2
3.
s2 == s3
4.
none of them / इनमें से कोई नहीं

Correct Answer: s1 == s2

"ja" + "va" is a compile-time constant expression, so it is interned to the same pooled literal as "java", making s1 == s2 true. s3 is a distinct heap object created by new, so comparisons with s3 are false. / "ja" + "va" एक कंपाइल-टाइम स्थिर व्यंजक है, अतः यह "java" वाले पूल्ड लिटरल में ही इंटर्न होता है, जिससे s1 == s2 true होता है। s3, new द्वारा बनाया गया भिन्न हीप ऑब्जेक्ट है, अतः s3 से तुलनाएँ false हैं।

Downloaded from PrepSnap (prepsnap.in)