Массивы в Java
В этом уроке мы научимся работать с массивами в Java.
Массив — это структура данных, для хранения некоторого количества элементов одного и того же типа. Размер массива задается при его инициализации и не может быть изменен. Нумерация элементов начинается с нуля.
Синтаксис
Проще говоря массив — это структура, для замены этого:
x0=0; x1=1; x2=2; x3=3; x4=4; x5=5;
Этим:
x[0]=0; x[1]=1; x[2]=2; x[3]=3; x[4]=4; x[5]=5;
Преимущество этой конструкции заключается в том, что число в квадратных скобках можно заменить переменной, что удобно использовать в циклах.
for(count=0; count<5; count++) {
System.out.println(x[count]);
}
Для того, чтобы использовать массив нам необходимо объявить и инициализировать его. Объявление:
<Тип>[] <Имя>; или <Тип> <имя>[];
Инициализация, с помощью оператора new выделим для массива необходимую память:
intArray = new int[10]; // выделяем память для хранения 10 целых чисел или int intArray[] = new int[10]; intArray[0]=1; // присваиваем первому элементу значение 1 intArray[1]=2;
Мы также можем объявить массив с заранее заданными значениями элементов:
int intArray[] = {1, 2, 3, 4}; // Объявляем массив размерностью 4, где первый элемент = 1
Напишем первую программу с использованием массива. Объявим, инициализируем и выведем значения на экран:
class ArrayDemo{
public static void main(String args[]){
int array[] = new int[7];
for (int count=0;count<7;count++){
array[count]=count+1;
}
for (int count=0;count<7;count++){
System.out.println("array["+count+"] = "+array[count]);
}
}
}
Массивы передаются по ссылке
Массивы передаются другим функциям по ссылке или как указатель на оригинал. То есть, если переданный массив изменится в функции, изменится и оригинал. Запустив следующую программу вы можете в этом убедиться.
public class Test {
public static void change(String a[])
{
a[0]="с";
}
public static void main(String[] args) {
String b[] = {"a", "s"};
Test.change(b);
for(int i=0;i<b.length;i++)
{
System.out.println(b[i]);
}
}
}
Многомерные массивы
Для объявления многомерных массивов в Java используется следующая форма:
int twoD[][] = new int[4][]; twoD[0] = new int[5]; twoD[1] = new int[6]; twoD[2] = new int[7]; twoD[3] = new int[8];
Обратите внимание, что размерность каждого элемента может быть разной.
Массивы объектов
public class Test {
public static class T
{
int a,b;
public void set(int c, int d)
{
a=c; b=d;
}
public void show()
{
System.out.println("a="+a);
System.out.println("b="+b);
}
}
public static void main(String[] args) {
T obj[] = new T[4];
obj[0] = new T();
obj[0].set(5, 6);
obj[0].show();
}
}
Обратите внимание, что в первой строчке метода main мы выделили память для 4 объектов типа Т, но каждый из них тоже надо инициализировать, иначе будет возбуждено исключение NullPointer.




Нет комментариев