>> 31; "> >> 31; ">
logo

CuriousTab

CuriousTab

Discussion


Home Java Programming Operators and Assignments Comments

  • Question
  • What will be the output of the program?
    class BitShift 
    {
        public static void main(String [] args) 
        {
            int x = 0x80000000;
            System.out.print(x + " and  ");
            x = x >>> 31;
            System.out.println(x);
        }
    }
    


  • Options
  • A. -2147483648 and 1
  • B. 0x80000000 and 0x00000001
  • C. -2147483648 and -1
  • D. 1 and -2147483648

  • Correct Answer
  • -2147483648 and 1 

    Explanation
    Option A is correct. The >>> operator moves all bits to the right, zero filling the left bits. The bit transformation looks like this:

    Before: 1000 0000 0000 0000 0000 0000 0000 0000

    After: 0000 0000 0000 0000 0000 0000 0000 0001

    Option C is incorrect because the >>> operator zero fills the left bits, which in this case changes the sign of x, as shown.

    Option B is incorrect because the output method print() always displays integers in base 10.

    Option D is incorrect because this is the reverse order of the two output numbers.


    Operators and Assignments problems


    Search Results


    • 1. What will be the output of the program?
      class Test 
      {
          public static void main(String [] args) 
          {
              Test p = new Test();
              p.start();
          }
      
          void start() 
          {
              boolean b1 = false;
              boolean b2 = fix(b1);
              System.out.println(b1 + " " + b2);
          }
      
          boolean fix(boolean b1) 
          {
              b1 = true;
              return b1;
          }
      }
      

    • Options
    • A. true true
    • B. false true
    • C. true false
    • D. false false
    • Discuss
    • 2. What will be the output of the program?
      class Test 
      {
          public static void main(String [] args) 
          {
              int x=20;
              String sup = (x < 15)? "small" : (x < 22)? "tiny" : "huge";
              System.out.println(sup);
          }
      }
      

    • Options
    • A. small
    • B. tiny
    • C. huge
    • D. Compilation fails
    • Discuss
    • 3. What will be the output of the program?
      class Equals 
      {
          public static void main(String [] args) 
          {
              int x = 100;
              double y = 100.1;
              boolean b = (x = y); /* Line 7 */
              System.out.println(b);
          }
      }
      

    • Options
    • A. true
    • B. false
    • C. Compilation fails
    • D. An exception is thrown at runtime
    • Discuss
    • 4. What will be the output of the program?
      class Two 
      {
          byte x;
      }
      
      class PassO 
      {
          public static void main(String [] args) 
          {
              PassO p = new PassO();
              p.start();
          }
      
          void start() 
          {
              Two t = new Two();
              System.out.print(t.x + " ");
              Two t2 = fix(t);
              System.out.println(t.x + " " + t2.x);
          }
      
          Two fix(Two tt) 
          {
              tt.x = 42;
              return tt;
          }
      }
      

    • Options
    • A. null null 42
    • B. 0 0 42
    • C. 0 42 42
    • D. 0 0 0
    • Discuss
    • 5. What will be the output of the program?
      class Bitwise 
      {
          public static void main(String [] args) 
          {
              int x = 11 & 9;
              int y = x ^ 3;
              System.out.println( y | 12 );
          }
      }
      

    • Options
    • A. 0
    • B. 7
    • C. 8
    • D. 14
    • Discuss
    • 6. What will be the output of the program?
      class Test 
      {
          static int s;
          public static void main(String [] args) 
          {
              Test p = new Test();
              p.start();
              System.out.println(s);
          }
      
          void start() 
          {
              int x = 7;
              twice(x);
              System.out.print(x + " ");
          }
      
          void twice(int x) 
          {
              x = x*2;
              s = x;
          }
      }
      

    • Options
    • A. 7 7
    • B. 7 14
    • C. 14 0
    • D. 14 14
    • Discuss
    • 7. What will be the output of the program?
      class SSBool 
      {
          public static void main(String [] args) 
          {
              boolean b1 = true;
              boolean b2 = false;
              boolean b3 = true;
              if ( b1 & b2 | b2 & b3 | b2 ) /* Line 8 */
                  System.out.print("ok ");
              if ( b1 & b2 | b2 & b3 | b2 | b1 ) /*Line 10*/
                  System.out.println("dokey");
          }
      }
      

    • Options
    • A. ok
    • B. dokey
    • C. ok dokey
    • D. No output is produced
    • E. Compilation error
    • Discuss
    • 8. What will be the output of the program?
      class BoolArray 
      {
          boolean [] b = new boolean[3];
          int count = 0;
      
          void set(boolean [] x, int i) 
          {
              x[i] = true;
              ++count;
          }
      
          public static void main(String [] args) 
          {
              BoolArray ba = new BoolArray();
              ba.set(ba.b, 0);
              ba.set(ba.b, 2);
              ba.test();
          }
      
          void test() 
          {
              if ( b[0] && b[1] | b[2] )
                  count++;
              if ( b[1] && b[(++count - 2)] )
                  count += 7;
              System.out.println("count = " + count);
          }
      }
      

    • Options
    • A. count = 0
    • B. count = 2
    • C. count = 3
    • D. count = 4
    • Discuss
    • 9. What will be the output of the program?
      class Test 
      {
          public static void main(String [] args) 
          {
              int x= 0;
              int y= 0;
              for (int z = 0; z < 5; z++) 
              {
                  if (( ++x > 2 ) && (++y > 2)) 
                  {
                      x++;
                  }
              }
              System.out.println(x + " " + y);
          }
      }
      

    • Options
    • A. 5 2
    • B. 5 3
    • C. 6 3
    • D. 6 4
    • Discuss
    • 10. What will be the output of the program?
      class Test 
      {
          public static void main(String [] args) 
          {
              int x= 0;
              int y= 0;
              for (int z = 0; z < 5; z++) 
              {
                  if (( ++x > 2 ) || (++y > 2)) 
                  {
                      x++;
                  }
              }
          System.out.println(x + " " + y);
          }
      }
      

    • Options
    • A. 5 3
    • B. 8 2
    • C. 8 3
    • D. 8 5
    • Discuss


    Comments

    There are no comments.

Enter a new Comment