Reputation: 252
Can you get a subarray from 3 dimensional array in Java? I'm kind of new to Java and need some help.
threeDimensions[][][] = {
{
{false, true, false, false},
{false, true, false, false},
{false, true, false, false},
{false, true, false, false},
},
{
{false, false, false, false},
{false, true, true, false},
{false, true, false, false},
{false, true, false, false},
}
};
twoDimensions = threeDimensions[0];
This way doesn't work but is there a way to do it without looping?
Upvotes: 0
Views: 52
Reputation: 123
It works as exactly as you think it works. You just forgot to declare twoDimensions as a two-dimension array. Do this:
Boolean twoDimensions[][] = threeDimensions[0];
Upvotes: 2
Reputation: 37645
Your way does work, but you've just got the syntax a bit wrong. It should be
boolean[][][] threeDimensions = {
{
{false, true, false, false},
{false, true, false, false},
{false, true, false, false},
{false, true, false, false},
},
{
{false, false, false, false},
{false, true, true, false},
{false, true, false, false},
{false, true, false, false},
}
};
boolean[][] twoDimensions = threeDimensions[0];
If your problem is printing it out, you need to write
System.out.println(Arrays.deepToString(twoDimensions));
Upvotes: 2