Java руководство для начинающих - Шилдт Герберт (2012)
-
Год:2012
-
Название:Java руководство для начинающих
-
Автор:
-
Жанр:
-
Оригинал:Английский
-
Язык:Русский
-
Издательство:Вильямс
-
Страниц:316
-
ISBN:978-5-8459-1770-6
-
Рейтинг:
-
Ваша оценка:
Java руководство для начинающих - Шилдт Герберт читать онлайн бесплатно полную версию книги
где val обозначает начальное значение, которым инициализируются элементы многомерного массива. Каждый внутренний блок многомерного массива соответствует отдельной строке. В каждой строке первое значение сохраняется в первом элементе подмассива, второе значение — во втором элементе и т.д. Обратите внимание на запятые, разделяющие блоки инициализаторов многомерного массива, а также на точку с запятой после закрывающей фигурной скобки.
В следующем фрагменте кода двумерный массив sqrs инициализируется числами от 1 до 10 и их квадратами:
// Инициализация двумерного массива,
class Squares {
public static void main(String args[]) {
// Обратите внимание на то, что у каждой строки свой ряд инициализаторов.
int sqrs[][] = {
{ 1, 1 },
{ 2, 4 },
{ 3, 9 },
{ 4, 16 },
{ 5, 25 },
{ 6, 36 },
{ 7, 49 },
{ 8, 64 },
{ 9, 81 },
{ 10, 100 }
};
int i, j;
for(i=0; i < 10; i++) {
for (j=0; j < 2; j++)
System.out.print(sqrs[i][j] + " ");
System.out.println();
}
}
}
Выполнение этого фрагмента кода дает следующий результат:
1 1
2 4
3 9
4 16
5 25
6 36
7 49
8 64
9 81
10 100
Альтернативный синтаксис объявления массивов
Помимо рассмотренной выше общей формы, для объявления массива можно также пользоваться следующей синтаксической конструкцией:
тип [ ] имя_переменной;
Здесь квадратные скобки указываются после спецификатора типа, а не имени переменной. Поэтому следующие два объявления равнозначны:
int counter[] = new int[3];
int[] counter = new int[3];
Равнозначными являются и приведенные ниже строки кода.
char table[] [] = new char[3] [4];
char[][] table = new char [3] [4];
Альтернативный синтаксис объявления массива оказывается удобным в тех случаях, если требуется объявить несколько массивов одного типа. Например:
int[] nums, nums2, nums3; // создать три массива
В этом объявлении создаются три переменные, ссылающиеся на массивы типа int. Тот же результат можно получить с помощью следующей строки кода:
int nums[], nums2[], nums3[]; // создать три массива
Альтернативный синтаксис объявления массива оказывается удобным и в тех случаях, если в качестве типа, возвращаемого методом, требуется указать массив. Например:
int[] someMeth( ) { ...
В этой строке кода объявляется метод someMeth (), возвращающий целочисленный массив.
Обе рассмотренные выше формы объявления массивов широко распространены в программировании на Java, и поэтому они употребляются в примерах, представленных в этой книге.
Присваивание ссылок на массивы
Присваивание значения одной переменной ссылки на массив другой переменной, по существу, означает, что обе переменные ссылаются на один и тот же массив, и в этом отношении массивы ничем не отличаются от любых других объектов. Такое присваивание не приводит ни к созданию копии массива, ни к копированию содержимого одного массива в другой. В качестве примера рассмотрим следующую программу:
// Присваивание ссылок на массивы,
class AssignARef {
public static void main(String args[]) {
int i;
int numsl[] = new int[10];
int nums2[] = new int[10];
for(i=0; i < 10; i++)
nums1[i] = i;
for(i=0; i < 10; i++)
nums2[i] = -i;
System.out.print("Here is numsl: ");
for(i=0; i < 10; i++)
System.out.print(numsl[i] + " ");
System.out.println();
System.out.print("Here is nums2: ");
for(i=0; i < 10; i++)
System.out.print(nums2[i] + " ");
System.out.println();
// присвоить ссылку на массив
// Теперь переменные nums2 и numsl ссылаются