aspose file tools*
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes doubt regarding the  output?? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Soft Skills this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "doubt regarding the  output??" Watch "doubt regarding the  output??" New topic
Author

doubt regarding the output??

srikanth reddy
Ranch Hand

Joined: Jul 28, 2005
Posts: 252
Given the following,
class PassA {
public static void main(String [] args) {
PassA p = new PassA();
p.start();
}
void start() {
long [] a1 = {3,4,5};
long [] a2 = fix(a1);
System.out.print(a1[0] + a1[1] + a1[2] + " ");
System.out.println(a2[0] + a2[1] + a2[2]);
}
long [] fix(long [] a3) {
a3[1] = 7;
return a3;
}
}


the output is given as 15 15 ...so i think the compiler sees from left add the elements if present and if comes accross the string element then if there are any more elements after it then it concatnates with the first result ...

like when i run with ""+a1[0] + a1[1] + a1[2] i get 375

with a1[0]+""+ a1[1] + a1[2] i get 375

with a1[0]+ a1[1]+"" + a1[2] i get 105

with a1[0]+ a1[1]+ a1[2]+"" i get 15


thanks & regards

srikanth reddy


Thanks & Regards<br /> <br />-Srikanth
Devender Thareja
Ranch Hand

Joined: Jul 14, 2005
Posts: 187
Start scanning from left.
If you add String + long (Or int) the expression result will be String.
If you are adding two long (or int), the result of expression will be long(or int).
e.g. " "+ 3 + 7 + 5
= " 3" + 7 + 5
= " 37" + 5
= " 375"
And 3 + 7 + " " + 5 = 10 5


Devender Thareja
SCEA, SCBCD, SCJP
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: doubt regarding the output??