Java Programming - Operators and Assignments - Discussion
Discussion Forum : Operators and Assignments - Finding the output (Q.No. 3)
3.
What will be the output of the program?
class PassS
{
public static void main(String [] args)
{
PassS p = new PassS();
p.start();
}
void start()
{
String s1 = "slip";
String s2 = fix(s1);
System.out.println(s1 + " " + s2);
}
String fix(String s1)
{
s1 = s1 + "stream";
System.out.print(s1 + " ");
return "stream";
}
}
Answer: Option
Explanation:
When the fix() method is first entered, start()'s s1 and fix()'s s1 reference variables both refer to the same String object (with a value of "slip"). Fix()'s s1 is reassigned to a new object that is created when the concatenation occurs (this second String object has a value of "slipstream"). When the program returns to start(), another String object is created, referred to by s2 and with a value of "stream".
Discussion:
30 comments Page 3 of 3.
Sathis said:
1 decade ago
What is system.out.format(); if I use this function what package should I use?
Shweta said:
1 decade ago
String is immutable then why s1 = s1 + "stream" is not giving any error.
Karthik said:
1 decade ago
What is the difference between system.out.print and system.out.println?
Vinod said:
1 decade ago
I can't understand the flow can anyone explain in detail?
Yuvaraj said:
1 decade ago
No Java Does Not Support multiple inheritance.
Likki said:
9 years ago
Thanks you all for giving the explanation.
Rajesh Jaiswal said:
1 decade ago
Is java support multiple inheritance?
Clinton g said:
10 months ago
I got it now, clearly.
Subhashini said:
6 years ago
Thank you @Siddu.
(1)
Mohanapriya said:
6 years ago
Thank you all.
(1)
Post your comments here:
Quick links
Quantitative Aptitude
Verbal (English)
Reasoning
Programming
Interview
Placement Papers