• Post Reply Bookmark Topic Watch Topic
  • New Topic

DOUBT from scjp book  RSS feed

 
Greenhorn
Posts: 25
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Given:
1. class Voop {
2. public static void main(String [] args) {
3. doStuff(1);
4. doStuff(1,2);
5. }
6. // insert code here
7. }
Which, inserted independently at line 6, will compile? (Choose all that apply.)
A. static void doStuff(int... doArgs) { }
B. static void doStuff(int[] doArgs) { }
C. static void doStuff(int doArgs...) { }
D. static void doStuff(int... doArgs, int y) { }
E. static void doStuff(int x, int... doArgs) { }
Answer:
-> A and E use valid var-args syntax.
-> B and C are invalid var-arg syntax, and D is invalid because the var-arg must be the last of a method's arguments.(Objective 1.4)
MY QUESTION IS WHY "B" IS A WRONG OPTION???THIS QUERY IS FROM SCJP BOOK-CHAPTER 1
 
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Abhishek,

static void doStuff(int[] doArgs) { } expects the values passed as that of
int array(Remember its an Object).
Hence when you pass doStuff(1) and doStuff(1,2), it doesnt get called.
But,

will work fine
 
Sheriff
Posts: 13411
Firefox Browser Redhat VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Please see KeepItDown to find out why it is considered rude to type sentences with the caps-lock button down.

Tip:
You can always fix a post by clicking on the link in that post.
 
Abhishek Mantri
Greenhorn
Posts: 25
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks Gaurav
Sorry Ben..will remember it next time
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!