1

Тема: Невірна довжина частин двовимірного масиву

Прів. Є двовимірний масив

private Room[][] rooms;

я кого ініціалізую якось так

rooms = new Room[roomX][roomY]; // roomX та roomY  - різні цілі числа

А потім інспектую

println("roomX: "+roomX+"  roomY: "+roomY);
    println("rooms[0].length: "+rooms[0].length+"  rooms[1].length: "+rooms[1].length);

А воно мені показує от таке

http://puu.sh/td5jB/82510f3177.png

Чому так?

Говоріть українською! Живіть українською! Відчувайте українською!

2

Re: Невірна довжина частин двовимірного масиву

rooms[2].length, rooms[3].length,.., rooms[11].length також усі будуть 12. Щоб побачити розмірність зовнішнього виміру, виведіть rooms.length

py -3 -m pip install git+https://github.com/snoack/python-goto
∩⍴○⌈⍴⍺/∧\∨/⊢○ ⌿⍀⍴⌊
Подякували: FakiNyan, koala2

3

Re: Невірна довжина частин двовимірного масиву

(Хоча стоп. З чого я взяв, що roomX не менше 12, і  rooms[11].length не викличе помилку?)

py -3 -m pip install git+https://github.com/snoack/python-goto
∩⍴○⌈⍴⍺/∧\∨/⊢○ ⌿⍀⍴⌊

4

Re: Невірна довжина частин двовимірного масиву

А чому не так?

new Room[10][12];

створює масив:

-  0 1 2 3 4 5 6 7 8  9  10 11
0  * * * * * * * * *  *  *  * <<< rooms[0].length = 12
1  * * * * * * * * *  *  *  *
2  * * * * * * * * *  *  *  *
3  * * * * * * * * *  *  *  *
4  * * * * * * * * *  *  *  *
5  * * * * * * * * *  *  *  *
6  * * * * * * * * *  *  *  *
7  * * * * * * * * *  *  *  *
8  * * * * * * * * *  *  *  *
9  * * * * * * * * *  *  *  *