Java Programming - Language Fundamentals - Discussion
Discussion Forum : Language Fundamentals - Finding the output (Q.No. 1)
1.
What will be the output of the program?
public class CommandArgsThree
{
public static void main(String [] args)
{
String [][] argCopy = new String[2][2];
int x;
argCopy[0] = args;
x = argCopy[0].length;
for (int y = 0; y < x; y++)
{
System.out.print(" " + argCopy[0][y]);
}
}
}
and the command-line invocation is
> java CommandArgsThree 1 2 3
Answer: Option
Explanation:
In argCopy[0] = args;, the reference variable argCopy[0], which was referring to an array with two elements, is reassigned to an array (args) with three elements.
Discussion:
36 comments Page 4 of 4.
Sharma said:
8 years ago
I can't understand. How output will 1, 2, 3?
Jeet said:
8 years ago
See the default values for the arrays are like;
String [][] argCopy = {{null,null},{null,null}};
String[] args = {1,2,3};
When we assign argCopy[0] = args;
argCopy[0] = {1,2,3} and
x = argCopy[0].length; which is = 3
Hence the output as
argCopy[0][0] = 1;
argCopy[0][1] = 2;
argCopy[0][2] = 3;
String [][] argCopy = {{null,null},{null,null}};
String[] args = {1,2,3};
When we assign argCopy[0] = args;
argCopy[0] = {1,2,3} and
x = argCopy[0].length; which is = 3
Hence the output as
argCopy[0][0] = 1;
argCopy[0][1] = 2;
argCopy[0][2] = 3;
(14)
Priyanka said:
8 years ago
String [][] argCopy = new String[2][2];
argCopy is declared with 2-dimensional array. Their size is 2. How can be assigned the value to a[0][2]?
argCopy is declared with 2-dimensional array. Their size is 2. How can be assigned the value to a[0][2]?
Sajid Ali said:
6 years ago
If array is declared as int a[2][2] = new int [2][2];
Then it only take a[0][0], a[0][1] and a[1][0], a[1][1] how could it takes 3 value while it initialise on a[0] that can only hold 2 a[0][0],a[0][1] values, it must throw array index out of bound exception or leave third value.
Then it only take a[0][0], a[0][1] and a[1][0], a[1][1] how could it takes 3 value while it initialise on a[0] that can only hold 2 a[0][0],a[0][1] values, it must throw array index out of bound exception or leave third value.
(7)
Surbhi said:
5 years ago
Thank you so much for explaining. It's very useful.
(2)
John said:
2 years ago
Please explain the answer clearly.
(1)
Post your comments here:
Quick links
Quantitative Aptitude
Verbal (English)
Reasoning
Programming
Interview
Placement Papers