Я просто скимминг через одну из моих старых учебников и нашел этот отрывок, образующую массивы в Java:Java Учебник: «размер массива должен быть известен во время компиляции»
одномерный массив является структурированный составной тип данных, состоящий из конечного, фиксированного набора упорядоченных однородных элементов до , который имеет прямой доступ. Конечный означает, что есть последний элемент . Фиксированный размер означает, что размер массива должен быть известен в момент времени компиляции , но это не значит, что все слоты в массиве должны содержать значащие значения.
У меня есть общее представление о массивах, и я комфортно использовать их в повседневных задачах, но я очень смущен заявлением о том, что размер массивов должны быть известен во время компиляции.
Очень простая программа Java показывает, что массив может быть обработан с переменным размером во время выполнения:
import java.util.Scanner;
public class test
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.print("Enter a number: ");
int size = scan.nextInt();
int[] array = new int[size];
System.out.println("You just create an array of size " + array.length);
}
}
компилируется, выполняется, и доходит до конца без ошибок.
Что дает?
Можете ли вы разместить дополнительную информацию об этом учебнике (ссылка, автор, имя)? –
Должен сказать, автор дает очень неточное определение здесь. ОП имеет очень действительную критику. Я бы просто сказал, что автор ошибается, или его формулировки не представляют его идею правильно. Когда мы говорим, что размер массива известен во время компиляции, мы говорим о таком случае, как (старше). C/C++ –
Книга представляет собой объектно-ориентированные структуры данных с использованием Java (первое издание) от Dale, Joyce и Weems. Этот пункт находится на стр. 90. – CptSupermrkt