array
DESCRIPTION
Chapter 7TRANSCRIPT
![Page 1: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/1.jpg)
array 1
ArrayArray
![Page 2: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/2.jpg)
array 2
• Learn about arrays.• Explore how to declare and manipulate data into arrays.• Understand the meaning of “array index out of bounds.”• Become familiar with the restrictions on array processing. • Discover how to pass an array as a parameter to a method.• Discover how to manipulate data in a two- dimensional array.• Learn about multidimensional arrays.
Chapter Objectives
![Page 3: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/3.jpg)
array 3
Why do need array
• Let consider the following problem
How do we write Java program that read five numbers, find the sum, and prints the numbers in reverse order
• Normally, we need to store all the numbers in 5 variables before we can print it in reverse order• Let see the following code. (next slide).
![Page 4: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/4.jpg)
array 4
import java.util.*;public class ReverseOrder{
public static void main(String [] args){int item0, item1, item2, item3, item4;int sum;Scanner input = new Scanner(System.in);
System.out.println("Enter five integers one number per line");
item0 = input.nextInt();item1 = input.nextInt();
item2 = input.nextInt();item3 = input.nextInt();item4 = input.nextInt();
sum = item0 + item1 + item2 + item3 + item4;
System.out.println("The sum of the numbers = " + sum);System.out.println("The numbers in reverse order are: ");System.out.println(item4 + " " + item3 + " " + item2 + " " + item1 +
" " + item0);}
}
![Page 5: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/5.jpg)
array 5
• We need 5 variables to hold the data
• What happen if we want to read 100 (or more) numbers and print them in reverse order.
• So, we need 100 variables to hold all data. (item0, item1, item2, item3, item4, item5,…100)
• For large of data, this code is not desirable.
• We need an ARRAY.
continue
![Page 6: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/6.jpg)
array 6
What is Array
• A structured data type with a fixed number of components.
• Every component is of the same type.
• Components are accessed using their relative positions in the array.
• Types of array- One-Dimensional array- Two-Dimensional array- Multi Dimensional array
![Page 7: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/7.jpg)
array 7
One-Dimensional Arrays
• Syntax to declare an array:
<dataType>[] <arrayName> = new <dataType>[intExp]; Or
<dataType> <arrayName>[]= new <dataType>[intExp];
1. dataType : a type of data will be store in array or component type
2. arrayName : a reference variable for array 3. intExp : size of an array (> 0)
• Syntax to access an array component:
- arrayName[indexExp]
![Page 8: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/8.jpg)
array 8
Example
int[] num = new int[5]; or int num[] = new int[5];
• This statement declare and creates the array num of 5 components.
• Each component is int data type
• The components are num[0], num[1], num[2], num[3], num[4]
• The value in square bracket [ ] is call index and it start at 0
num
![Page 9: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/9.jpg)
array 9
continue
elementindex
In java, [ ] is call as array subscripting operator
Items in an array is called elements
![Page 10: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/10.jpg)
array 10
Continue
Array of five integers called test
Array of five characters
called grade
test[0] = 85;test[1] = 98;test[2] = 75;test[3] = 87;test[4] = 68;
grade[0] = ‘B’;grade[1] = ‘C’;grade[2] = ‘B’;grade[3] = ‘A’;grade[4] = ‘C’;
![Page 11: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/11.jpg)
array 11
Assign a value into array
int[] list = new int[10];
Assume the declaration as above.
Statement;
list[3] = 10;
list[6] = 35;
list[5] = list[3] + list[6];
will store 10, 45 and 35 into the array in list[3], list[5] and list[6] respectively. (see next figure)
![Page 12: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/12.jpg)
array 12
![Page 13: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/13.jpg)
array 13
Specifying Array Size During Program Execution (dynamic array)
• Array that are created during program execution is called dynamic array• Enables user to specify the size of the array
int arraySize;System.out.print("Enter the size of the array: "); arraySize = input.nextInt();
int[] list = new int[arraySize];
• The system use the value of arraysize to instantiate the object list
![Page 14: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/14.jpg)
array 14
Array Initialization During Declaration
• We also can assign a value into the array during declaration
double[]sales = {12.25, 32.50, 16.90, 23.00, 45.68};
• The values, called initial values, are placed between braces and separated by commas • When declaring and initializing arrays, the size of the array is determined by the number of initial values within the braces.• If an array is declared and initialized simultaneously, we do not use the operator new to instantiate the array object.
![Page 15: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/15.jpg)
array 15
Arrays and the Instance Variable length
• A public instance variable length is associated with each array that has been instantiated. • The variable length contains the size of the array. • The variable length can be directly accessed in a program using the array name and the dot operator.
int[] list = {10, 20, 30, 40, 50, 60};
•This statement creates the array list of six components and initializes the components using the values given.• Here list.length is 6.
![Page 16: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/16.jpg)
array 16
Loops and Arrays
• Loops can be used to process array in several ways:
1. Initialing an array to a specific value 2. Input data into an array 3. Printing an array 4. Find the sum and average of an array 5. Determine the largest element in the array
![Page 17: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/17.jpg)
array 17
1. Initializing an array to a specific value
eg.
to initialize every component of the array sale with a value of 10.00
double[] sales = new double[10];int index;
for (index = 0; index < sales.length;index++) sales[index] = 10.00;
![Page 18: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/18.jpg)
array 18
2. Input data into an array
double[] sales = new double[10];int index;
for (index = 0; index < sales.length;index++) sales[index] = input.nextDouble();
3. Printing an array
double[] sales = new double[10];int index;
for(index = 0; index < sales.length;index++)System.out.print(sales[index] + " ");
![Page 19: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/19.jpg)
array 19
4. Find the sum and average of an array
double[] sales = new double[10];int index, sum;double average;
sum = 0;for(index = 0; index < sales.length;index++)
sum = sum + sales[index];
if (sales.length != 0) average = sum / sales.length;else average = 0.0;
![Page 20: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/20.jpg)
array 20
5. Determining the largest element in the array
double[] sales = new double[10];int index, maxIndex;double largestSale;
maxIndex = 0;
for(index = 1; index<sales.length;index++) if (sales[maxIndex] < sales[index]) maxIndex = index;largestSale = sales[maxIndex];
![Page 21: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/21.jpg)
array 21
continue
Suppose the array sales is as figure 9.5
![Page 22: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/22.jpg)
array 22
Array Index Out of Bounds
• An array is in bounds if: 0 <= index <= arraySize – 1
• An array is in out bounds if:
index < 0 or index > arraySize
If an array is out of bounds;
i. ArrayIndexOutOfBoundsException exception is thrown. ii. The program will terminates with an appropriate error message
![Page 23: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/23.jpg)
array 23
example
Consider the following declaration:
double[] num = double[10];int i;
• The component num[i] is valid if i = 0, 1, 2….9
• When i < 0 or i >= 10, the component num[i] is
invalid (the index is out of bounds)
![Page 24: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/24.jpg)
array 24
Consider the following loopsfor (i = 0; i <= 10; i++) list[i] = 5;
• When i = 10; list[i] = list[10] = 5;• The program tries to access list[10] but does not exist
• We say the index is out of bound
5
5
5
5
5
5
5
5
5
5
list[0]
list[1]
list[2] list[3]
list[4]
list[5]
list[6]
list[7]
list[8]
list[9]
![Page 25: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/25.jpg)
array 25
Manipulate data into arrays
• Searching a value
• Calculation
• Reverse element
![Page 26: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/26.jpg)
array 26
Searching a value
• Eg.- A method to search an array of integer
• The Search method return the location of
the first array element equal to the search value
int Search (int[ ] num, int search value){ int location; for (i=0; i =num.length; i++) if(num[i] = = search Value) location = i; return location;}
![Page 27: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/27.jpg)
array 27
• Assume the num values as below: int[] num = {10,20,30,40,50,60,70,80,90,100}
• If searchValue is 60, the
method will return 5 to Search
method.
40
10
20
30
50
60
70
80
90
100
num[0]
num[1]
num[2]
num[3]
num[4]
num[5]
num[6]
num[7]
num[8]
num[9]
Location, i
![Page 28: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/28.jpg)
array 28
Calculation in array
• Eg:- add a number from Array1 and Array2,
and store the total in Array3
• Assume Array1, Array2 and Array3
declarations as below:
int[ ] Array1 = {10,20,30,40,50,60,70,80,90,100};
int[ ] Array2 = {11,22,33,44,55,66,77,88,99,110};
int[ ] Array3 = new int[10];
![Page 29: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/29.jpg)
array 29
+
10 21
42
63
84
:
:
:
:
:
:
11
20
30
40
50
60
70
80
90
100
22
33
44
55
66
77
88
99
110
Array[0]
Array[1]
Array[2]
Array[3]
Array[4]
Array[5]
Array[6]
Array[7]
Array[8]
Array[9]
Array[0]
Array[1]
Array[2]
Array[3]
Array[4]
Array[5]
Array[6]
Array[7]
Array[8]
Array[9]
Array[0]
Array[1]
Array[2]
Array[3]
Array[4]
Array[5]
Array[6]
Array[7]
Array[8]
Array[9]
![Page 30: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/30.jpg)
array 30
public static void ArraySum(){ int[] Array1 = {10,20,30,40,50,60,70,80,90,100}; int[] Array2 = {11,22,33,44,55,66,77,88,99,110}; int[] Array3 = new int[10]; int i;
for (i=0; i < 10; i++) {
Array3[i] = Array1[i] + Array2[i];
System.out.println("Array3["+i+"]=“ +Array3[i]); }}
Output
Array3[0] = 21
Array3[1] = 42
Array3[2] = 63
Array3[3] = 84
Array3[4] = 105
Array3[5] = 126
Array3[6] = 147
Array3[7] = 168
Array3[8] = 189
Array3[9] = 210
![Page 31: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/31.jpg)
array 31
for (i=0; i < 10; i++) Array3[i] = Array1[i] + Array2[i];
Values of Array3 during for loop iterations
i Array1[i] Array2[i] Array3[i]
0 10 11 21
1 20 22 42
2 30 33 63
3 40 44 84
4 50 55 105
5 60 66 126
6 70 77 147
7 80 88 168
8 90 99 189
9 100 110 210
![Page 32: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/32.jpg)
array 32
Reverse element
Eg- Read 10 integer numbers, and print the numbers in reverse order
public static void ReverseOrder(){ int item[] = new int[10]; int i; //Read integers number and store in item[i] System.out.println("Enter ten integers number:");
for(i = 0; i < 10; i++) item[i] = input.nextInt();
//Print the output in reverse order are:"); System.out.println("The numbers in reverse order are:");
for(i = 9; i >= 0; i--) System.out.println(item[i]);
}
![Page 33: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/33.jpg)
array 33
Output Enter ten integers number:56656743647639774784The numbers in reverse order are:84477739766443676556
![Page 34: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/34.jpg)
array 34
Arrays as Formal Parameters to Methods
Arrays can be passed as parameter to methods
Eg.
public static void arrayAsFormalParameter(int[] listA,double[] listB, int num)
{//…
}
Formal parameter
The above method have 3 formal parameters – listA, listB and num
![Page 35: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/35.jpg)
Statement to call the method
array 35
arrayAsFormalParameter(intList, doubleNumList, number);
Actual parameter
int[] intList = new int[10];double[] doubleNumList = new double[15];int number;
Suppose we have the following statement
![Page 36: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/36.jpg)
example 1
array 36
public class PassingParameter {public static void main(String[] args){
int num[] = {10,20,30,40,50,60,70};System.out.println(“ The number of elements: "
+ num.length);printArray(num);
}
public static void printArray(int[] number){for (int index = 0; index < number.length; index++)
System.out.println(number[index] + "");}
}
Passing parameter
OUTPUT:
The number of elements: 7
10
20
30
40
50
60
70
![Page 37: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/37.jpg)
array 37
public static void main(String[] args){ int[] listA = {11,22,36,42,15,46,27,48,19,10} int[] listB = new int[10]; int Total, Largest; // call sumArray method and return a value to Total
Total = sumArray (listA, listA.length); System.out.println(“\n The sum of ListA is :” + Total);
// call indexLargestElement and return the indux value to Largest
indLargest = indexLargestElement (listA, list.length); System.out.println(“\n The largest element is :” + listA[Largest]);
example 2
continue
![Page 38: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/38.jpg)
array 38
public static int sumArray(int[] list, int noOfElements){ int index; int sum = 0; for (index = 0; index < noOfElement; index++)
sum = sum + list[index]; return sum;}
public static int indexLargestElement(int[] list, int noOfElement){ int index; int maxIndex = 0; for (index = 1; index < noOfElement; index++) if(list[maxIndex] < list[index]) maxIndex = index; return maxIndex;
}
![Page 39: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/39.jpg)
Array of String Objects
array 39
String[] nameList = new String[5]
nameList[0] = “Amanda Green”;nameList[1] = “Vijay Arora”;nameList[2] = “Sheila Mann”;nameList[3] = “Rohit Sharma”;nameList[4] = “Mandy Johnson”;
![Page 40: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/40.jpg)
Array of Object
array 40
• Can use arrays to manipulate objects.• Example: Create an array named array1 with N object of type T:
T[] array1 = new T[N]
• Can instantiate array1 as follows:
for(int j=0; j < array1.length; j++) array1[j] = new T();
• Eg: a) clock – hour, minute, second b) student – name, matric, age
![Page 41: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/41.jpg)
array 41
import java.util.*;
public class ArrayOfObj {
int N = 3;
StudentInfo[] student = new StudentInfo[N];
public static void main (String[] args)
{
int N = 3;
int i;
ArrayOfObj arr = new ArrayOfObj();
StudentInfo[] Std = new StudentInfo[N];
Std = arr.InputData();
arr.PrintInfo(Std);
}
exampleInput students information's (name,matric, age) into array and print out the output
class StudentInfo{
String name;
String matric;
int age;
}
![Page 42: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/42.jpg)
array 42
public StudentInfo[] InputData() int i;
StudentInfo[] student = new StudentInfo[N];
System.out.println("\nEnter Students Information ");
System.out.println("___________________________ \n");
for (i = 0; i< N; i++)
{
student[i] = new StudentInfo();
System.out.print("Name : ");
student[i].name = input.readLine();
System.out.print("Matric No : ");
student[i].matric = input.nextLine();
System.out.print("Age : ");
student[i].age = input.nextInt();
System.out.println();
}
return student;
}
public void PrintInfo(StudentInfo[] Std)
{
int i;
System.out.println("List of students :\n");
for (i=0;i<N;i++)
{
System.out.println((i+1) + ". " + Std[i].matric + " " +
Std[i].name + " " + " " + Std[i].age);
}
}
![Page 43: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/43.jpg)
array 43
Enter Students Information ___________________________
Name : BAHARUDIN OSMAN
Matric No : S11111
Age : 30
Name : BADRUL HAZMI
Matric No : S23212
Age : 28
Name : NUR BADRINA
Matric No : S34213
Age : 27
List of students :
1. S11111 BAHARUDIN OSMAN 30
2. S23212 BADRUL HAZMI 28
3. S34213 NUR BADRINA 27
output
![Page 44: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/44.jpg)
Statement below create an array of arrivalTimeEmp
array 44
Clock[] arrivalTimeEmp = new Clock[100];
![Page 45: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/45.jpg)
Instantiating of Array Objects
array 45
for (int j = 0; j < arrivalTimeEmp.length; j++) arrivalTimeEmp[j] = new Clock();
![Page 46: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/46.jpg)
Continue
array 46
• Setting a time for index 49
arrivalTimeEmp[49].setTime(8, 5, 10);
![Page 47: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/47.jpg)
Delete Object
array 47
• Step
i. Identify the element to deleteii. Point the object to delete nulliii. Move up all elements (after deleted object)iv. Point the last element to null
![Page 48: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/48.jpg)
Example Step 1 : Identify the element to delete Step 2 : Point the object to delete to null
- if the sixth element to delete
array 48
for (i=0; i < student.length; i++) if(i==5) then
student[i] = null
null
student
NameMatricIC
NameMatricIC
NameMatricIC
![Page 49: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/49.jpg)
array 49
element A
element B
element C
element D
element E
element
element G
element H
element I
element J
[0]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
element A
element B
element C
element D
element E
element G
element H
element I
element J
[0]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
iii. Move up all elements (after deleted object)iv. Point the last element to null
for (i = 0; i < student.length; i++) if (i= =5) student[i] = student[student.length -1)if (i= = (student.length – 1)) student[i] = null
Set the last element to null
nullbefore
studentstudent
after
![Page 50: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/50.jpg)
Two-Dimension Array
A collection of a fixed number of components arranged in rows and columns.
All components are in same type. Data is sometimes in table form (difficult to represent
using a one-dimensional array).
10 11 21 45
20 22 42 34
30 33 66 21
40 44 84 32
50 55 105 13
60 66 126 21
70 77 147 33
80 88 168 22
90 99 189 123
array 50
![Page 51: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/51.jpg)
continue
array 51
• To declare/instantiate a two-dimensional array:
dataType[ ][ ] arrayName = new data Type[intRow][intCol];
intRow => number of rowsintCol => number of columns
intRow and intCol > 0
• Eg.
double[ ][ ] sales = new double[10][15];
![Page 52: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/52.jpg)
array 52
double[ ][ ] sales = new double[10][5];
![Page 53: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/53.jpg)
Accessing Array Components
To access a component of a two-dimensional array:arrayName[indexExp1][indexExp2];
indexExp1 = row positionindexEXp2 = column position
Eg.
The above statement stores 25.75 into row number 5 and column number 3; (the 6th row and the 4th column)
array 53
sales [5][3] = 25.75;
![Page 54: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/54.jpg)
array 54
Sales [5][3] = 25.75;
![Page 55: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/55.jpg)
Array Initialization During Declaration
2-Dimensional array can be initialized during declaration Eg.
array 55
int[ ][ ] board = { {2,3,1}, {15,25,13},
{20,4,7}, {11,18,14}};
![Page 56: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/56.jpg)
Processing 2-Dimensional Array
eg.• Initialization• Print• Input data/store data into 2-Dimensional array• Sum the data• Find the largest element
Suppose the declaration as below:
array 56
int row;
int column;
int matix = new int[7][6];
![Page 57: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/57.jpg)
array 57
Initialization
for (row = 0; row < matrix.length; row++) for (col = 0; col < matrix[row].length; col++)
matrix[row][col] = 10;
matrix
![Page 58: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/58.jpg)
array 58
for (row = 0; row < matrix.lenth; row++){ for ( col = 0; col < matrix[row].length; col++)
System.out.println(matrix[row][col]); System.out.println();
}
Read Data
for (row = 0; row < matrix.length; row++) for (col = 0; col < matrix[row].length; col++) matrix[row][col] = Integer.parseInt(keyboard.readLine())
![Page 59: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/59.jpg)
array 59
Largest Element in Each Row
for (row = 0; row < matrix.length; row++){ largest = matrix[row][0]; for (col = 1; col < matrix[row].length; col++)
if (largest < matrix[row][col]) largest = matrix[row][col];
System.out.println(“The largest element of row” + (row+1) + “=“ + largest);}
![Page 60: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/60.jpg)
Can define three-dimensional arrays or n-dimensional arrays (n can be any number).
Syntax to declare and instantiate array:
dataType[][]…[] arrayName = new dataType[intExp1][intExp2]…[intExpn];
Syntax to access component:arrayName[indexExp1][indexExp2]…[indexExpn]
○ intExp1, intExp2, ..., intExpn = positive integers○ indexExp1,indexExp2, ..., indexExpn = non-
negative integers
array 60
Multidimensional Arrays
![Page 61: Array](https://reader030.vdocuments.net/reader030/viewer/2022020110/555c3f01d8b42a0b038b4cf7/html5/thumbnails/61.jpg)
double[][][] carDealers = new double[10][5][7];
for (i = 0; i < 10; i++) for (j = 0; j < 5; j++) for (k = 0; k < 7; k++) carDealers[i][j][k] = 10.00;
array 61
Loops to Process Multidimensional Arrays