Java Questions & Answers – Arrays

This section of our 1000+ Java MCQs focuses on Array Data Structure of Java Programming Language.

1. Which of these operators is used to allocate memory to array variable in Java?
a) malloc
b) alloc
c) new
d) new malloc
View Answer

Answer:c
Explanation:Operator new allocates block of memory specified by the size of array, and gives the reference of memory allocated to the array variable.

2. Which of these is an incorrect array declaration?
a) int arr[] = new int[5]
b) int [] arr = new int[5]
c) int arr[]
arr = new int[5]
d) int arr[] = int [5] new
View Answer

Answer:d
Explanation:Operator new must be succeeded by array type and array size.

3. What will this code print?
int arr[] = new int [5];
System.out.print(arr);
a) 0
b) value stored in arr[0].
c) 00000
d) Garbage value
View Answer

Answer:d
Explanation:arr is an array variable, it is pointing to array if integers. Printing arr will print garbage value. It is not same as printing arr[0].

4. Which of these is an incorrect Statement?
a) It is necessary to use new operator to initialize an array.
b) Array can be initialized using comma separated expressions surrounded by curly braces.
c) Array can be initialized when they are declared.
d) None of the mentioned
View Answer

Answer: a
Explanation:Array can be initialized using both new and comma separated expressions surrounded by curly braces example : int arr[5] = new int[5]; and int arr[] = { 0, 1, 2, 3, 4};

5. Which of these is necessary to specify at time of array initialization?
a) Row
b) Column
c) Both Row and Column
d) None of the mentioned
View Answer

Answer:a
Explanation:None.

6. What is the output of this program?

  1.     class array_output {
  2.         public static void main(String args[]) 
  3.         {
  4.             int array_variable [] = new int[10];
  5. 	    for (int i = 0; i < 10; ++i) {
  6.                 array_variable[i] = i;
  7.                 System.out.print(array_variable[i] + " ");
  8.                 i++;
  9.             }
  10.         } 
  11.     }

a) 0 2 4 6 8
b) 1 3 5 7 9
c) 0 1 2 3 4 5 6 7 8 9
d) 1 2 3 4 5 6 7 8 9 10
View Answer

Answer:a
Explanation:When an array is declared using new operator then all of its elements are initialized to 0 automatically. for loop body is executed 5 times as whenever controls comes in the loop i value is incremented twice, first by i++ in body of loop then by ++i in increment condition of for loop.
output:
$ javac array_output.java
$ java array_output
0 2 4 6 8

7. What is the output of this program?

  1.     class multidimention_array {
  2.         public static void main(String args[])
  3.         {
  4.             arr[][] = new int[3][];
  5.             arr[0] = new int[1];
  6.             arr[1] = new int[2];
  7.             arr[2] = new int[3];               
  8. 	    int sum = 0;
  9. 	    for (int i = 0; i < 3; ++i) 
  10. 	        for (int j = 0; j < i + 1; ++j)
  11.                     arr[i][j] = j + 1;
  12. 	    for (int i = 0; i < 3; ++i) 
  13. 	        for (int j = 0; j < i + 1; ++j)
  14.                     sum + = arr[i][j];
  15. 	    System.out.print(sum); 	
  16.         } 
  17.     }

a) 11
b) 10
c) 13
d) 14
View Answer

Answer:b
Explanation:arr[][] is a 2D array, array has been allotted memory in parts. 1st row contains 1 element, 2nd row contains 2 elements and 3rd row contains 3 elements. each element of array is given i + j value in loop. sum contains addition of all the elements of the array.
output:
$ javac multidimention_array.java
$ java multidimention_array
10

8. What is the output of this program?

  1.     class evaluate {
  2.         public static void main(String args[]) 
  3.             {
  4. 	        int arr[] = new int[] {0 , 1, 2, 3, 4, 5, 6, 7, 8, 9};
  5. 	        int n = 6;
  6.                 n = arr[arr[n] / 2];
  7. 	        System.out.println(arr[n] / 2);
  8.             } 
  9.     }

a) 3
b) 0
c) 6
d) 1
View Answer

Answer:d
Explanation:Array arr contains 10 elements. n contains 6 thus in next line n is given value 2 printing arr[2]/2 i:e 2/2 = 1.
output:
$ javac evaluate.java
$ java evaluate
1

9. What is the output of this program?

  1.     class array_output {
  2.         public static void main(String args[]) 
  3.         {
  4.             char array_variable [] = new int[10];
  5. 	    for (int i = 0; i < 10; ++i) {
  6.                 array_variable[i] = 'i';
  7.                 System.out.print(array_variable[i] "");
  8.             }       	
  9.         } 
  10.     }

a) 1 2 3 4 5 6 7 8 9 10
b) 0 1 2 3 4 5 6 7 8 9 10
c) i j k l m n o p q r
d) i i i i i i i i i i
View Answer

Answer:d
Explanation:None.
output:
$ javac array_output.java
$ java array_output
i i i i i i i i i i

10. What is the output of this program?

  1.     class array_output {
  2.         public static void main(String args[]) 
  3.         {
  4.             int array_variable[][] = {{ 1, 2, 3}, { 4 , 5, 6}, { 7, 8, 9}};
  5.             int sum = 0;
  6.             for (int i = 0; i < 3; ++i)
  7.                 for (int j = 0; j <  3 ; ++j)
  8.                     sum = sum + array_variable[i][j];
  9.             System.out.print(sum / 5);
  10.         } 
  11.     }

a) 8
b) 9
c) 10
d) 11
View Answer

Answer:b
Explanation:None.
output:
$ javac array_output.java
$ java array_output
9

Sanfoundry Global Education & Learning Series – Java Programming Language.

About

Manish Bhojasia, a technology veteran with 17+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He is Linux Kernel Developer and SAN Architect and is passionate about competency developments in these areas. He lives in Bangalore and delivers focused training sessions to IT professionals in Linux Kernel, Linux Debugging, Linux Device Drivers, Linux Networking, Linux Storage & Cluster Administration, Advanced C Programming, SAN Storage Technologies, SCSI Internals and Storage Protocols such as iSCSI & Fiber Channel. Stay connected with him below.


Sanfoundry Training Center of Excellence (CoE)

Manish Bhojasia, a technology veteran with 17+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He is Linux Kernel Developer and SAN Architect and is passionate about competency developments in these areas. He lives in Bangalore and delivers focused training sessions to IT professionals in Linux Kernel, Linux Debugging, Linux Device Drivers, Linux Networking, Linux Storage & Cluster Administration, Advanced C Programming, SAN Storage Technologies, SCSI Internals and Storage Protocols such as iSCSI & Fiber Channel. Stay connected with him below.







Subscribe Newsletter & Posts
Sanfoundry Internships
Follow Manish & Sanfoundry