Java Массивы…..


Массив ?

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

Массив — это коллекция схожих типов данных, хранящихся в смежных областях памяти.
При объявлении массива вы должны указать тип данных с именем массива
. Доступ к различным элементам, присутствующим в массиве, можно получить, используя их индекс.

Синтаксис объявления массива в Java:
int [] intArray;

— Массив имеет фиксированную длину, т.е. статичен по своей природе.
— В массиве могут храниться примитивные типы и ссылки на объекты.
— В массиве, когда ссылка делается на несуществующий элемент, возникает исключение IndexOutOfRangeException.

Преимущества
o Оптимизация кода: Это делает код оптимизированным, мы можем эффективно извлекать или сортировать данные.
o Случайный доступ: Мы можем получить любые данные, расположенные в позиции индекса.
Недостатки
o Ограничение размера: в массиве можно хранить только фиксированный размер элементов. Он не увеличивает свой размер во время выполнения. Для решения этой проблемы в Java используется фреймворк коллекций, который увеличивается автоматически.

Существует два типа массивов.
o Одномерный массив
o Многомерный массив

Пример массива в Java
Давайте рассмотрим простой пример массива java, где мы будем объявлять, инстанцировать, инициализировать и обходить массив. Программа Java: как объявлять, инстанцировать, инициализировать и обходить массив Java.

class Testarray{  
public static void main(String args[]){  
int a[]=new int[5];//declaration and instantiation  
a[0]=10;//initialization  
a[1]=20;  
a[2]=70;  
a[3]=40;  
a[4]=50;  
//traversing array  
for(int i=0;i<a.length;i++)//length is the property of array  
System.out.println(a[i]);  
}}  

Вход в полноэкранный режим Выход из полноэкранного режима

Цикл For-each для массива Java
Мы также можем распечатать массив Java с помощью цикла for-each. Цикл Java for-each печатает элементы массива один за другим. Он сохраняет элемент массива в переменной, а затем выполняет тело цикла.

//Java Program to print the array elements using for-each loop  
class Testarray1{  
public static void main(String args[]){  
int arr[]={33,3,4,5};  
//printing array using for-each loop  
for(int i:arr)  
System.out.println(i);  
}}  

Вход в полноэкранный режим Выход из полноэкранного режима

Анонимный массив в Java
Java поддерживает функцию анонимного массива, поэтому вам не нужно объявлять массив при передаче массива методу.

//Java Program to demonstrate the way of passing an anonymous array to method.

class TestAnonymousArray{
//creating a method which receives an array as a parameter
static void printArray(int arr[]){
for(int i=0;i<arr.length;i++)
System.out.println(arr[i]);
}
public static void main(String args[]){
printArray(new int[]{10,22,44,66});//passing anonymous array to method
}}

Вход в полноэкранный режим Выход из полноэкранного режима

Исключение ArrayIndexOutOfBoundsException
Виртуальная машина Java (JVM) выбрасывает исключение ArrayIndexOutOfBounds, если длина массива отрицательна, равна размеру массива или больше размера массива при обходе массива.

Многомерный массив в Java
В этом случае данные хранятся в индексе на основе строк и столбцов (также известном как матричная форма).

Пример многомерного массива в Java
Рассмотрим простой пример объявления, инстанцирования, инициализации и печати двумерного массива.

 //Java Program to illustrate the use of multidimensional array  

class Testarray3{  
public static void main(String args[]){  
//declaring and initializing 2D array  
int arr[][]={{1,2,3},{2,4,5},{4,4,5}};  
//printing 2D array  
for(int i=0;i<3;i++){  
 for(int j=0;j<3;j++){  
   System.out.print(arr[i][j]+" ");  
 }  
 System.out.println();  
}  
}}  

Вход в полноэкранный режим Выход из полноэкранного режима

Вывести

Копирование массива Java
Мы можем копировать массив в другой массив с помощью метода arraycopy() класса System.
Синтаксис метода arraycopy

Syntax of arraycopy method
public static void arraycopy(  
Object src, int srcPos,Object dest, int destPos, int length  )  

//Java Program to copy a source array into a destination array in Java  

class TestArrayCopyDemo {  
    public static void main(String[] args) {  
        //declaring a source array  
        char[] copyFrom = { 'd', 'e', 'c', 'a', 'f', 'f', 'e',  
                'i', 'n', 'a', 't', 'e', 'd' };  
        //declaring a destination array  
        char[] copyTo = new char[7];  
        //copying array using System.arraycopy() method  
        System.arraycopy(copyFrom, 2, copyTo, 0, 7);  
        //printing the destination array  
        System.out.println(String.valueOf(copyTo));  
    }  
}  

Вход в полноэкранный режим Выход из полноэкранного режима

Вывести

Клонирование массива в Java
Поскольку массив Java реализует интерфейс Cloneable, мы можем создать клон массива Java. Если мы создаем клон одномерного массива, то создается глубокая копия массива Java. Это означает, что будет скопировано фактическое значение. Когда метод clone вызывается для массива, он возвращает ссылку на новый массив, который содержит (или ссылается) на те же элементы, что и исходный массив.
Таким образом, в вашем примере int[] arr — это отдельный экземпляр объекта, созданный на куче, а int[] carr — отдельный экземпляр объекта, созданный на куче. (Помните, что все массивы являются объектами).

//Java Program to clone the array  
class Testarray1{  
public static void main(String args[]){  
int arr[]={33,3,4,5};  
System.out.println("Printing original array:");  
for(int i:arr)  
System.out.println(i);  

System.out.println("Printing clone of the array:");  
int carr[]=arr.clone();  
for(int i:carr)  
System.out.println(i);  

System.out.println("Are both equal?");  
System.out.println(arr==carr);  

}}  

Вход в полноэкранный режим Выход из полноэкранного режима

Выход

Сложение двух матриц в Java
Рассмотрим простой пример, который складывает две матрицы.

//Java Program to demonstrate the addition of two matrices in Java  

class Testarray5{  
public static void main(String args[]){  
//creating two matrices  
int a[][]={{1,3,4},{3,4,5}};  
int b[][]={{1,3,4},{3,4,5}};  

//creating another matrix to store the sum of two matrices  
int c[][]=new int[2][3];  

//adding and printing addition of 2 matrices  
for(int i=0;i<2;i++){  
for(int j=0;j<3;j++){  
c[i][j]=a[i][j]+b[i][j];  
System.out.print(c[i][j]+" ");  
}  
System.out.println();//new line  
}  

}}  

Войти в полноэкранный режим Выход из полноэкранного режима

вывести

Умножение 2 матриц в Java
При умножении матриц однорядный элемент первой матрицы умножается на все столбцы второй матрицы, что можно понять из приведенного ниже изображения.

//Java Program to multiply two matrices  
public class MatrixMultiplicationExample{  
public static void main(String args[]){  
//creating two matrices    
int a[][]={{1,1,1},{2,2,2},{3,3,3}};    
int b[][]={{1,1,1},{2,2,2},{3,3,3}};    

//creating another matrix to store the multiplication of two matrices    
int c[][]=new int[3][3];  //3 rows and 3 columns  

//multiplying and printing multiplication of 2 matrices    
for(int i=0;i<3;i++){    
for(int j=0;j<3;j++){    
c[i][j]=0;      
for(int k=0;k<3;k++)      
{      
c[i][j]+=a[i][k]*b[k][j];      
}//end of k loop  
System.out.print(c[i][j]+" ");  //printing matrix element  
}//end of j loop  
System.out.println();//new line    
}    
}}  

Вход в полноэкранный режим Выход из полноэкранного режима

** ** Happy reading friends..... ****
Войти в полноэкранный режим Выход из полноэкранного режима

Оцените статью
devanswers.ru
Добавить комментарий