Array dkk
Tipe data turunan.
Contoh deklarasi : int x[20];
SATU variabel untuk menyimpan BANYAK data
dengan TIPE data yang SAMA. Mempunyai INDEKS.
Struktur data :
Alokasi memori bersifat statis/ tetap.
Konsep : string, array multidimensi
4
3
2
1
7
Program menghitung rata-rata nilai.
Algoritma :
Deklarasikan variabel array untuk menyimpan data-data
nilai.
Input data nilai dengan perintah looping. Akses elemen
dengan operator kurung siku ([]).
Hitung penjumlahan data-data nilai.
Hitung rata-rata = jumlah total/ jumlah data.
Tipe data turunan.
Contoh deklarasi :
struct {
int jari_jari;
float luas;
float keliling;
} lingkaran;
SATU variabel bisa menyimpan BANYAK data yang
BERBEDA TIPE datanya. Mempunyai ELEMEN.
Struktur data :
10
314.0
62.8
Konsep : struct of struct (nested struct).
Program tentang lingkaran.
Algoritma :
Inventarisasi atribut-atribut yang dimiliki oleh sebuah
objek lingkaran.
Akses masing-masing elemen dengan memakai operator
tanda titik (.).
Struktur data berupa array yang setiap elemennya
bertipe struct.
Contoh deklarasi :
struct {
int NPM;
char nama[30];
float IPK;
} mhs[100];
Struktur data :
100
101
102
103
Abdullah
Budi
Candra
Daud
3.80
3.45
3.22
3.17
Untuk akses elemen dimulai dari indeks array
kemudian diikuti nama elemennya mhs[3].NPM =
1234;
Program data mahasiswa.
Program tabel fungsi kuadrat.
ARRAY
Array as function parameter
String
Two dimensional array
STRUCT
Array of structure
Unions
Struct as function parameter
Dari slide pak cahyo pertemuan 7 dan pertemuan 2 dengan
sedikit modifikasi
Review BP
An array is a special kind of object that is used to
store a collection of data.
The data stored in an array must all be of the same
type, whether primitive or reference data types.
For example, we may want to store:
An array of double values
An array of int values
13
Write a Java program that asks the user for 10 exam
scores and displays the average.
What if you are also required to display all the scores
which are higher than the average?
What if you are to record 100 scores?
14
import java.util.;
public class ExamScoresForLoop
{
public static void main(String[] args)
{
Scanner keyboard = new Scanner (System.in);
double score;
double total = 0.0;
for(int i = 1; i <= 10; i++)
{
System.out.println("Enter score " + i +":");
score = keyboard.nextDouble();
total = total + score;
}
System.out.println("The average score is " + total/10);
// how to display scores which are greater than average???
}
}
We need to keep track of each score that is entered by the user in an
efficient manner.
15
Instead of only storing one score:
score
98.9
0x0010
We need to store a collection of scores, or
what is called an array.
score
0x0h40
0x0h40
0x0010
0x0h41
0x0h42
in this case, score is considered
to be a reference to the array at
the memory address stored.
0x0h43
0x0h44
98.9
50.5
75.0
59.5
65.4
16
Once an array has been declared, we can store and
access data in it.
We must specify the index representing the position
of the data.
The index always begins from 0.
score
98.9
0
50.5
75.0
1
59.5
3
65.4
4
2
Index representing
position of the data
score[0]
score[3]
17
An array is declared by:
specifying the type of data it will hold
specifying the name of the array with an identifier
including square brackets [ ]
Syntax:
<data type>[] <identifier>;
Examples
int[] num;
// an array of ints
double[] score;
// an array of doubles
Student[] st;// an array of Student
objects
18
In Java, the array is an object and must be
instantiated with its size.
Syntax:
<identifier> = new <data type>[<size>];
Therefore, an array may be declared and
instantiated in one statement:
int[] num = new int[10];
//creates an array to store 10 integers
It may also be instantiated in two steps:
int[] num;
num = new int[10];
19
An array can also be created by using an initializer list
that fills in the values of the elements in the array in one
line.
When an initializer list is used, the new operator and size
of the array are not specified.
Examples:
int[] num = {3, 6, 5, 7, 2, 8, 10, 20}
char[] letterGrades = {'A', 'B', 'C', 'D',
'F'}
20
An array that has been instantiated has a fixed
size.
int[] num = new int[10] has array elements from
num[0] to num[9] only.
The Java interpreter will indicate an out-of-bounds
error at run-time if the array index is not valid.
Each array object has an attribute length that
stores the size of the array, or the number of
elements.
Therefore an array will have valid indices from 0 to
(length-1) only.
21
We can use a for loop to traverse the array
For example, we may display each element of the
array:
for (int i = 0; i < maks; i++)
{
System.out.println(data[i]);
}
We may even use a for loop to allow the user to
enter the elements of the array via interactive
input.
22
We may need to check if an element is in the array:
We can use the following logic to check whether a name
that the user enters is in the array of names declared and
filled earlier:
ask user for the required name
Start from i = 0
assume that it is not found
While the required name is not found and i < length of
array
if the value at position i corresponds to the required name
then the name is found
otherwise,
check the next element (i = i + 1)
23
We often need to perform calculations using some
or all of the elements of the array:
total of all elements
the average
the element with the largest or smallest value
Assume that an array of double values has been
declared and filled:
double[] score = new double[10];
24
In order to find the total, we must initialize and keep track
of the running total.
The total is then used to calculate the average.
double total = 0.0;
for (int i = 0; i < score.length; i++)
{
total = total + score[i];
}
System.out.println("The total is " + total);
double avg = total / score.length;
System.out.println("The average is " + avg);
25
Arrays can be used as parameters in methods: the
entire array is passed to the method.
For example, write a method findEmp that
receives two parameters:
the first parameter is an array of Strings representing
names of employees
the second parameter is a String representing the name
of the employee required
The method should return the position of the
employee whose name is found based on the
second parameter.
26
The method can be defined as follows:
public static int findEmp(String[] name, String wanted)
{
for(int i = 0; i < name.length; i++)
if (wanted.equalsIgnoreCase(name[i]))
return i;
// found at pos i
return -1;
// not found
}
27
Arrays can also be returned by methods, as long
as the array type is specified as the return type.
The following method takes as input an array of
Strings and returns another array with the
lengths of each of the Strings in the array.
public static int[] findLengths(String[] strArray)
{
int[] strLength = new int[strArray.length];
for (int i = 0; i < strArray.length; i++)
strLength[i] = strArray[i].length();
return strLength;
}
28
All elements in an array are automatically
initialised with default values.
An array of numeric data has default elements
with value 0
double[] score = new double[10];
all elements in score will have value 0.0
Arrays of boolean will be initialized to false.
Arrays of reference data types will be initialized to
null.
29
Review BP
Class adalah template untuk pembuatan obyek
Class memiliki anggota :
Atribut
Method
A Java console application must consist of one class
that has the following structure:
/* This is a sample program only.
Written by:
multi-line comments
Date:
*/
name of the class
public class SampleProgram
{
public static void main(String [] args)
{
in-line
statements
int num1 = 5;
// num stores 5
comments
System.out.print("num1 has value ");
to be
System.out.println(num1);
executed
}
}
A Java console application must consist of one class
that has the following structure:
/* This is a sample program only.
Written by:
Date:
*/
class header
public class SampleProgram
{
public static void main(String [] args)
{
int num1 = 5;
// num stores 5
System.out.print("num1 has value ");
System.out.println(num1);
}
}
main
method
class BankAccount
{
private double balance; // account balance
public BankAccount(double openingBalance) {
// constructor
balance = openingBalance;
}
public void deposit(double amount) {
// makes deposit
balance = balance + amount;
}
public void withdraw(double amount) {
// makes withdrawal
balance = balance – amount;
}
public void display(){
// displays balance
System.out.println("balance=" + balance);
}
} // end class BankAccount
class BankApp
{
public static void main(String[] args)
{
// create acct
BankAccount ba1 = new BankAccount(100.00);
System.out.print("Before transactions, ");
// output : Before transactions, balance=100
ba1.display(); // display balance
ba1.deposit(74.35); // make deposit
ba1.withdraw(20.00); // make withdrawal
System.out.print("After transactions, ");
// output : After transactions, balance=154.35
ba1.display(); // display balance
} // end main()
} // end class BankApp
© Copyright 2025