как в жава передать массив методу?
Ты хотел сказать,
private void initTable( connectCoordinate unlimClusterTable[][], connectCoordinate unlimClusterTableDiag[] )
{
for( int i = 0; i < clusterNumber; i++ ) {
for( int j = 0; j < clusterNumber; j++ ) {
unlimClusterTable [i] [j] . x = 0;
unlimClusterTable [j] [i] . y = 0;
}
}
}
Именно так!
Так подскажете, где ошибка?
Так подскажете, где ошибка?
А ты не забыл перед тем, как передавать массивы, создать их?
Тебе сюда: http://java.sun.com/docs/books/tutorial/java/data/arraybasics.html
unlimClusterTable= new connectCoordinate[X][];
for (int i; i<X; ++i) {
unlimClusterTable[i]= new connectCoordinate[Y(i)];
for (int j; j<Y(i); ++j) unlimClusterTable[i][j]= new connectCoordinate;
}
Тебе сюда: http://java.sun.com/docs/books/tutorial/java/data/arraybasics.html
private void searchUnlimCluster {
connectCoordinate[][] unlimClusterTable = new connectCoordinate[clusterNumber][clusterNumber];
connectCoordinate[] unlimClusterTableDiag = new connectCoordinate[clusterNumber];
Это к тому, что не забыл:) может опять же что не так сделал:)
За ссылку спасибо, пойду почитаю, но если кто зхдесьт сможет ответить гнушаться не буду:)
connectCoordinate[][] unlimClusterTable = new connectCoordinate[clusterNumber][clusterNumber];
connectCoordinate[] unlimClusterTableDiag = new connectCoordinate[clusterNumber];
Это к тому, что не забыл:) может опять же что не так сделал:)
За ссылку спасибо, пойду почитаю, но если кто зхдесьт сможет ответить гнушаться не буду:)
а объекты ты потом создал?
(смотри второй for)
(смотри второй for)
Не очень понял про создание обхъекта, можешь прояснить....
Очень возможно что именно тут собака и порылась...
Очень возможно что именно тут собака и порылась...
Понимаешь, это не С и не С++.
Тут, когда ты создаёшь массив, создаётся массив указателей (впрочем, как и любое объявление переменной здесь создаёт ссылку, а не объект).
Здесь
SomeClass a[][];
примерно эквивалентно С++-ному:
SomeClass *a[][];
Поэтому уже после создания массива должен существовать цикл, создающий объекты, типа:
Тут, когда ты создаёшь массив, создаётся массив указателей (впрочем, как и любое объявление переменной здесь создаёт ссылку, а не объект).
Здесь
SomeClass a[][];
примерно эквивалентно С++-ному:
SomeClass *a[][];
Поэтому уже после создания массива должен существовать цикл, создающий объекты, типа:
for (int i= 0; i<X; ++i)
for (int j= 0; j<Y; ++i)
a[i][j]= new SomeClass;
спасибо! все получилось!
Огромное спасибо за разъяснения!
Огромное спасибо за разъяснения!
Оставить комментарий
nade
private void initTable( connectCoordinate unlimClusterTable[][], connectCoordinate unlimClusterTableDiag[] ){
for( int i = 0; i < clusterNumber; i++ ) {
for( int j = 0; j < clusterNumber; j++ ) {
unlimClusterTable [j] . x = 0;
unlimClusterTable [j] . y = 0;
}
}
}
Я не могу рюхнуть, что здесь не так, как только доходим до обращения к массивам после фора апплет падает со словами нот инициалайзед...ЕСли коментим оба массива. то оставшая ся часть кода оработает
Происходит Лажа, Оба массива на самом деле двумерные! просто форум одни из скобок с Итой буковкой съедает и все тут.ю