Class primer_array4

{

static Scanner reader = new Scanner(System.in);

public static void main(String[] args)

{

int [] b=new int[reader.nextInt()];

for (int i=0; i<=b.length-1; i++)

{

b[i]=(int)(10*Math.random());

System.out.print(b[i]);

}

}

}

 

Как видите, в заголовке цикла используется свойство "размер" – но обратите внимание, как написана верхняя граница изменений переменной-счетчика (она же, кстати, и индекс ячейки массива):

i<=b.length-1

 

Поскольку в этом выражении используется логическое правило "меньше или равно", то, для того, чтобы остановиться на последней ячейке, необходимо уменьшать на 1 значение, равное размеру массива.

 

Безусловно, это создает определенную путаницу – во всяком случае, до тех пор, пока правильная запись не станет для вас автоматической.

 

Однако можно использовать и другой вариант записи этого условия: с логическим правилом "строго меньше":

 

for (int i=0; i<b.length; i++)

 

Разумеется, никакой разницы между этими двумя вариантами заголовка цикла нет, и каждый может выбрать тот вариант, который ему ближе.

 

Покажи мне весь массив…

 

Один из встроенных в язык Java методов позволяет вывести на экран весь массив одной командой, причем без использования цикла "от начальной ячейки до последней, одну ячейку за другой".

 

Выглядит этот метод следующим образом:

 

System.out.println(Arrays.toString(a));

 

Удобство этого метода в том, что нет нужды использовать цикл.

 

Неудобство же этого метода в том, что он всегда выводит массив на экран в одном и том же виде (пример – чуть ниже по тексту), в то время, как использование цикла позволяет выводить массив на экран так, как нам это нужно или хочется.

 

А если массив не заполнять?

 

В языке Java предусмотрена возможность заполнять массив (ячейки массива) значениями "по умолчанию", то есть без того, чтобы в классе "откровенно" происходило заполнение массива какими-то значениями.

 

Возможность эта предусматривает:

· заполнение массива типа int значениями 0;

· заполнение массива типа double значениями 0.0;

· заполнение массива типа boolean значениями false;

· заполнение массива типа String значениями null;

 

Вот пример класса, который может показать вам эти данные на экране:

 

import java.util.*;