Отправляет email-рассылки с помощью сервиса Sendsay

Уроки по Java

  Все выпуски  

Уроки по Java


Информационный Канал Subscribe.Ru


Основы Java. Уроки с сайта http://progs.biz

Рассылка №4

Основы Java. Урок 8. Массивы.

Полные версии уроков (с картинками) можно найти по адресам
Урок 8. Массивы.

Введение в Java. Урок 8. Массивы

Начнем сразу с примеров. Вот пример, в котором мы заводим массив из 3-х целых чисел, в каждое из которых мы записываем случайное целое число от 0 до 9 и затем выводим все числа на экран:

class Test{
    public static void main(String [] args)
    {
        int [] k;
        k=new int [3];
        for(int i=0; i<3; i++)
        {
            k[i]=(int)(10*Math.random());
            System.out.println(k[i]);
        }
    }
}

В этм примере мы завели массив k за два этапа - сначала мы объявили переменную типа массив целых чисел:

...
        int [] k;
 ...

и затем мы определили массив (т. е. указали, сколько конкретно элементов в нем содержится):

...
        k=new int [3];
 ...

Объявление мессива можно сделать и другим способом:

...
        int k[];
 ...

Т. е. квадратные скобочки можно ставить и так, и так. В общем-то особой разницы нет, и скобки можно ставить там, где удобнее в конкретной ситуации. Вот небольшой пример на два эти способа:

...
        int n, k[]; //n - целое, k - массив из целых
        int[] n, k; //n и k - массивы из целых
 ...

Два этапа для массива можно объединить:

...
        int [] k = new int [3];
 ...

Нумерация элементов массива, как и в других C/C++-подобных языках, начинается с нуля.

Задание начальных элементов для массива можно совместить с его объявлением:

...
        double[] d = {3.14, -44.43, 9.084};
 ...

В этом примере мы завели массив их трех вещественных чисел. Обратите внимание, что в этом случае можно в квадратных скобках ничего не писать.

Теперь рассмотрим двумерные массивы. Опять же начнем с примера:

class Test{
    public static void main(String [] args)
    {
        int [][] k = {{3, 4, -44}, {-2, 8}};
        System.out.println(k[0][2]);
        System.out.println(k[1][1]);
    }
}

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

Точно также, как и для одномерных массивов, для многомерных существуют и другие способы их задания:

        int [][] k;
        k=new int[2][];
        k[0]=new int[]{3, 4, -44};
        k[1]=new int[]{-2, 8};

Также эквивалентны следующие объявления массивов:

...
        double[][] d;
 ...
...
        double[] d[];
 ...
...
        double d[][];
 ...

Массивы могут участвовать в операциях присваивания:

class Test{
    public static void main(String [] args)
    {
        int [][] k = {{3, 4, -44}, {-2, 8}};
  int[][] k1;
  k1=k; //k1 теперь ссылается на точ же массив, что и k
        System.out.println(k1[0][2]);
        System.out.println(k1[1][1]);
    }
}

Указанный фрагмент выведет на экран -44 и 8.

Массивы в Java задаются динамически. Это в частности означает, что мы можем менять их размеры в процессе работы программы:

        int [] k={3, 4};
        System.out.println(k[1]);
        k=new int[]{2, 6, -55};
        System.out.println(k[2]);

В указанном фраменте в массиве k сначала 2 элемента, а затем - 3.

Наверх

Copyright Алексеев Игорь, 2002

Copyright Osco do Casco, 2002

Copyright сайт progs.biz, 2002


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное