logo

CuriousTab

CuriousTab

Discussion


Home Java Programming Language Fundamentals See What Others Are Saying!
  • Question
  • What will be the output of the program?
    public class CommandArgsTwo 
    {
        public static void main(String [] argh) 
        {
            int x;
            x = argh.length;
            for (int y = 1; y <= x; y++) 
            {
                System.out.print(" " + argh[y]);
            }
        }
    }
    
    and the command-line invocation is

    > java CommandArgsTwo 1 2 3


  • Options
  • A. 0 1 2
  • B. 1 2 3
  • C. 0 0 0
  • D. An exception is thrown at runtime

  • Correct Answer
  • An exception is thrown at runtime 

    Explanation
    An exception is thrown because at some point in (System.out.print(" " + argh[y]);), the value of x will be equal to y, resulting in an attempt to access an index out of bounds for the array. Remember that you can access only as far as length - 1, so loop logical tests should use x < someArray.length as opposed to x < = someArray.length.

    More questions

    • 1. Which of the following are legal lines of code?

      1. int w = (int)888.8;
      2. byte x = (byte)1000L;
      3. long y = (byte)100;
      4. byte z = (byte)100L;

    • Options
    • A. 1 and 2
    • B. 2 and 3
    • C. 3 and 4
    • D. All statements are correct.
    • Discuss
    • 2. What will be the output of the program?
      int I = 0;
      label:
          if (I < 2) {
          System.out.print("I is " + I);
          I++;
          continue label;
      }
      

    • Options
    • A. I is 0
    • B. I is 0 I is 1
    • C. Compilation fails.
    • D. None of the above
    • Discuss
    • 3. What will be the output of the program?
      interface Foo141 
      { 
          int k = 0; /* Line 3 */
      } 
      public class Test141 implements Foo141 
      {
          public static void main(String args[]) 
          {
              int i; 
              Test141 test141 = new Test141(); 
              i = test141.k; /* Line 11 */
              i = Test141.k; 
              i = Foo141.k; 
          } 
      }
      

    • Options
    • A. Compilation fails.
    • B. Compiles and runs ok.
    • C. Compiles but throws an Exception at runtime.
    • D. Compiles but throws a RuntimeException at runtime.
    • Discuss
    • 4. What will be the output of the program?
      public class Test 
      {  
          public static void main(String args[]) 
          { 
              int i = 1, j = 0; 
              switch(i) 
              { 
                  case 2: j += 6; 
                  case 4: j += 1; 
                  default: j += 2; 
                  case 0: j += 4; 
              } 
              System.out.println("j = " + j); 
          } 
      }
      

    • Options
    • A. j = 0
    • B. j = 2
    • C. j = 4
    • D. j = 6
    • Discuss
    • 5. What will be the output of the program?
      Float f = new Float("12"); 
      switch (f) 
      {
          case 12: System.out.println("Twelve"); 
          case 0: System.out.println("Zero"); 
          default: System.out.println("Default"); 
      }
      

    • Options
    • A. Zero
    • B. Twelve
    • C. Default
    • D. Compilation fails
    • Discuss
    • 6. What will be the output of the program?
      for (int i = 0; i < 4; i += 2) 
      { 
          System.out.print(i + " "); 
      } 
      System.out.println(i); /* Line 5 */
      

    • Options
    • A. 0 2 4
    • B. 0 2 4 5
    • C. 0 1 2 3 4
    • D. Compilation fails.
    • Discuss
    • 7. What will be the output of the program?
      import java.util.*; 
      class I 
      {
          public static void main (String[] args) 
          {
              Object i = new ArrayList().iterator(); 
              System.out.print((i instanceof List)+","); 
              System.out.print((i instanceof Iterator)+","); 
              System.out.print(i instanceof ListIterator); 
          } 
      }
      

    • Options
    • A. Prints: false, false, false
    • B. Prints: false, false, true
    • C. Prints: false, true, false
    • D. Prints: false, true, true
    • Discuss
    • 8. What will be the output of the program?
      public class CommandArgs 
      {
          public static void main(String [] args) 
          {
              String s1 = args[1];
              String s2 = args[2];
              String s3 = args[3];
              String s4 = args[4];
              System.out.print(" args[2] = " + s2);
          }
      }
      
      and the command-line invocation is

      > java CommandArgs 1 2 3 4


    • Options
    • A. args[2] = 2
    • B. args[2] = 3
    • C. args[2] = null
    • D. An exception is thrown at runtime.
    • Discuss
    • 9. Which two statements are equivalent?

      1. 16*4
      2. 16>>2
      3. 16/2^2
      4. 16>>>2

    • Options
    • A. 1 and 2
    • B. 2 and 4
    • C. 3 and 4
    • D. 1 and 3
    • Discuss
    • 10. What two statements are true about properly overridden hashCode() and equals() methods?

      1. hashCode() doesn't have to be overridden if equals() is.
      2. equals() doesn't have to be overridden if hashCode() is.
      3. hashCode() can always return the same value, regardless of the object that invoked it.
      4. equals() can be true even if it's comparing different objects.

    • Options
    • A. 1 and 2
    • B. 2 and 3
    • C. 3 and 4
    • D. 1 and 3
    • Discuss


    Comments

    There are no comments.

Enter a new Comment