What is output of the following code:
public class Test{
public static void main(String[] args){
int[] x = {120, 200, 016 };
for(int i = 0; i < x.length; i++)
System.out.print(x[i] + " ");
}
}
public class Test{
public static void main(String[] args){
int[] x = {120, 200, 016 };
for(int i = 0; i < x.length; i++)
System.out.print(x[i] + " ");
}
}
A. 120 200 16
B. 120 200 14
C. 120 200 016
D. 016 is a compile error. It should be written as 16.
Answer: Option B
Solution(By Examveda Team)
016 is an octal number. The prefix 0 indicates that a number is in octal.
Join The Discussion
Comments ( 3 )
In Java, arrays are objects of which class?
A. Array
B. Collection
C. ArrayList
D. None of the above
How do you declare a one-dimensional array in Java?
A. int[] myArray;
B. int myArray[];
C. Array
D. All of the above
What is the default initial value of numeric elements in an array of type int in Java?
A. 0
B. 1
C. -1
D. Null
What is the correct way to initialize a two-dimensional array in Java?
A. int[][] myArray = {{1, 2}, {3, 4}};
B. int[2][2] myArray = {{1, 2}, {3, 4}};
C. int[2][2] myArray; myArray[0][0] = 1; myArray[0][1] = 2; myArray[1][0] = 3; myArray[1][1] = 4;
D. None of the above
@Abhichek Tiwari,
In the value 016, 0 is representing that the whole no.(016) is Octal no. not an integer so the compiler will convert it into its corresponding integer value which is:
0*8^2+1*8^1+6*8^0=14
here we are converting into octal.
0*8^2+1*8^1+6*8^0=14
if 0 is octal then the value will remain 16 how it will change to 14