Error array dimension missing
Please post code as text, not as a screenshot. It would help if you’d show how you’ve declared allPlanets , as I doubt that it actually has 6 dimensions.
Jan 27, 2016 at 6:54
Looks like Planet has ONE dimension, maybe with six elements?
Jan 27, 2016 at 6:58
2 Answers 2
You have to declare size of the array before you can use it’s length attribute.
allPlanets = new Planet[6];
answered Jan 27, 2016 at 6:56
hpopiolkiewicz hpopiolkiewicz
3,339 4 4 gold badges 24 24 silver badges 37 37 bronze badges
When you create an array, you have to specify the size. I strongly suspect you want:
In in = new In(filename); int nPlanets = in.readInt(); allPlanets = new Planet[nPlanets];
Note that it’s odd that you’re assigning to a field and returning the reference from the method. It would be more usual to do one or the other, e.g. use a local variable:
Planet[] planets = new Planet[nPlanets]; . return planets;
And then assign to the field in the calling code:
allPlanets = readPlanets(. );
Работа с массивами.
В предыдущих статьях стало немного понятно, как присвоить значение элементам массива, создать многомерный и что нужно для того, чтобы вывести все это на экран. Теперь представим задачу, в которой нужно создать массив в 1000 элементов и присвоить им одинаковые значения. Для решения этой проблемы нам понадобится команда Arrays.fill().
Создадим массив (сформируем объект), выделим необходимое количество памяти (которая заполниться значением null) и затем при помощи команды Arrays.fill() присвоим элементам одинаковые значения.
Если вы посмотрите на рисунок, то увидите ошибки на консоли, вот что они означают: 8 : error: class, interface, or enum expected >; — цифра указывает на строку в которой допущена ошибка, далее следует описание проблемы, а именно лишняя скобка, которая идет после основной закрывающей скобки главного класса. Следующая ошибка в том, что после создания объекта не стоят квадратные скобки: :8: error: ‘[‘ expected int[] rich = new int;
:8: error: ‘]‘ expected int[] rich = new int;
2 errors // означает количество ошибок при этой компиляции
И еще одна ошибка говорит о том, что для массива не выделено пространства :8: error: array dimension missing int[] = new int[]; 1 error
Для того, чтобы отображение было правильным применим команду Arrays.toString
System.out.println(Arrays.toString(rich));//выводим на экран
Теперь попробуем создать двухмерный массив с одинаковыми значениями.
public static void main(String[]args)
int[][] rich = new int[10][50];//Создадим массив (сформируем объект),
// выделим необходимое количество памяти
Arrays.fill(int rich, 9, 2);
System.out.println(Arrays.toString(rich)); //выводим на экран
К сожалению этот финт мне не удалось сделать, т.к. при компиляции ошибок не возникло, а вот при выполнении кода получилось: exception in thread “main” java.lang.arraystore… Буду разбираться.
У нас в садике и близлежащие территории посыпало градом, а вот около дома не было и следа.
Array dimension missing

posted 18 years ago
Number of slices to send:
Optional ‘thank-you’ note:

I have a line in my code:
int array = new int[] array;
the error is array dimention missing
What does this mean?
Ranch Hand

posted 18 years ago
Number of slices to send:
Optional ‘thank-you’ note:

To declare an array you need something along the lines of
int[] anIntArray = new int[10];
This declares ‘anIntArray’ to be an array of length 10.
Retired horse trader.
Note: double-underline links may be advertisements automatically added by this site and are probably not endorsed by me.
Stephanie Dears
Ranch Hand

posted 18 years ago
Number of slices to send:
Optional ‘thank-you’ note:

It’s reading from a .txt file.

author and iconoclast
Posts: 24204


posted 18 years ago
Number of slices to send:
Optional ‘thank-you’ note:

You can declare an array of unknown size like this:
but there’s no array object there. You can’t use «new» to actually create the object until you actually know the size.
If you don’t know the size — that’s what we’re talking about here, right? — then don’t use an array: use one of the Collections classes in java.util. For example, java.util.ArrayList, which is rather like an array, but it grows automatically as you add items to it.
Укажите на ошибки начала моего кода?
Выведите ошибку, пожалуйста! Где не так? Задание: Программа запрашивает число n. Далее, мы вводим n чисел и сохраняем все введенные числа в массив. Далее, программа запрашивает пользователя число m. Если число m существует в нашем массиве, программа должна вывести слово «Yes» и вывести индекс (расположение, адрес) данного числа.
import java.util.Scanner;
public class Mainpublic static void main (String[] args)Scanner in = new Scanner(System.in);
int n = nextInt();
int mass [] = new int [];
int m = nextInt();
int mass [] = new int [];
for (int i =0; i mass [i] = in.nextInt();
>
for (int i =0;i if(mass[i]==0);
int m = i;
System.out.println(«Yes»);
break;
>
>
Голосование за лучший ответ
Вторая строка.
Компилятор сообщает какая ошибка и в какой строка. Сообщение компилятора:
Main.java:8: error: array dimension missing
int mass [] = new int [];
(номер строки может отличаться). Не указан размер массива.
Далее ещё полно ошибок. Плюс «ответы» портят текст, если после знака < идёт латинская буква. Надо вставлять пробел.