• Tidak ada hasil yang ditemukan

Slide IST101 Fondasi Pemrograman Struktur Data 04 Fundamentals Data Type String Array Scanner

N/A
N/A
Protected

Academic year: 2017

Membagikan "Slide IST101 Fondasi Pemrograman Struktur Data 04 Fundamentals Data Type String Array Scanner"

Copied!
28
0
0

Teks penuh

(1)

#4

(2)

Tujuan Pertemuan

Mahasiswa paham dan mampu

menggunakan reference type.

Mahasiswa memahami konsep dan teknik

penggunaan String

Mahasiswa memahami konsep dan teknik

penggunaan Array

Mahasiswa memahami konsep dan teknik

(3)

Dasar Object & Reference

Object adalah suatu instance of

(instansi/umpama/perumpamaan) dari

suatu tipe (tapi tipe nonprimitive berupa

suatu class).

Object disimpan dalam suatu memory

Reference variable menyimpan reference

(4)

Reference Variable

Reference variable (atau sering disingkat

reference) dalam Java adalah variable

yang dengan suatu cara tertentu

menyimpan alamat memory tempat suatu

object disimpan.

1000 (0,0)

1024 (5,12)

3200 point2 =

1024

3600 point1 =

1000

5124 point3 =

(5)

Reference Variable

Reference akan selalu menyimpan alamat

memory tempat penyimpanan suatu

object.

Contoh: point1 menyimpan 1000, yang

merupakan alamat memori dari (0, 0).

100

0

point1

102

4

point2

100

0

point3

(0, 0)

(5, 12)

(at 1000)

(at 1024)

1000 (0,0)

1024 (5,12)

3200 point2 =

1024

3600 point1 =

1000

5124 point3 =

(6)

Variable

Operator yang dapat dipakai oleh variabel dengan

tipe reference (kecuali type String) adalah

operator assignment ( = ) dan

operator equality comparison (== atau != ).

Contoh:

point3 = point2;

Dengan demikian maka:

Point3 sekarang berisi 1024,

yaitu;

Alamat dari object (5,12)

SIF1213 - 6

1000 (0,0) 1024 (5,12)

3200 point2 = 1024 3600 point1 = 1000 5124 point3 =

1000

1000 (0,0) 1024 (5,12) 3200 point2 =

1024 3600 point1 =

1000 5124 point3 =

1024

(7)

Operations Deals with the

Object

Terdapat beberapa kategori operasi

terkait object yang dijadikan referensi

oleh variable tipe reference.

Hanya terdapat 3 aksi yang dapat diberikan

pada object:

1. type conversion.

2. Akses internal field (variable internal) atau

call a method melalui dot operator (.).

(8)

The dot operator (.)

Dot operator digunakan untuk memilih

method yang diterapkan pada suatu

object.

Contoh:

String kalimat="Selamat pagi semua, apakabar hari ini";

char huruf3 = kalimat

.

charAt(3);

Dot

(9)

Strings

String dalam java akan ditangani secara reference type.

String behaves like an object

String immutable,

Artinya begitu object string dibuat, isinya tidak bisa berubah.

Contoh:

String empty = “kosong";

String message = "Hello";

String repeat = message;

Berdasarkan kode diatas:

Terdapat 2 string, yaitu;

1.object string

kosong

yang direferensikan

oleh

empty

, dan

2.object string

Hello

yang direferensikan oleh

message

dan

repeat

100

0

Kosong

102

4

Hello

320

0

Empty =

1000

360

0

message =

1024

512

(10)

Strings Concatenation

"this" + " that" // Hasilnya "this that"

"abc" + 5 // Hasilnya "abc5"

(11)

Strings Comparing

Untuk membandingkan kesamaan

(

equality

)

dua object String, digunakan

equals

method.

String lhs = "this";

String rhs = "that";

Boolean sama = lhs.

equals

(rhs) // Hasilnya false

(12)

Strings Methods

String greeting = "hello";

int len = greeting

.length

();

// len is 5

char ch = greeting

.charAt

(1);

// ch is 'e'

(13)

String Converting/Casting

.toString()

Konversi primitive type ke String

sourceType.toString(number_val, format);

System.out.println( "55 in base 2: " +

Integer.toString( 55, 2 )

);

Konversi String ke number

destType.parseDestType(string);

int x = Integer.parseInt( "75" );

(14)

Arrays

Array merupakan mekanisme dasar dalam

penyimpanan sekumpulan entitas nilai

yang

memiliki type sejenis

.

Tiap entitas dalam array dapat diakses

melalui operator index array, yaitu:

[index]

(15)

Arrays Declaration

int [] array1;

array1 = new int [100];

int [] array1 = new int [100];

atau

int [] array1 = { 3, 4, 10, 6 };

atau

Jumlah entitas yg

dapat ditampung

Array

(16)

Arrays Assignment

char [] array1 = new char[4];

for(int i=0;i<=3;i++) {

array1[i]=

(char) ('A' + i);

System.

out.println("isi" + i + ": " + array1[i]);

}

char [] array1 = new char[4];

for(int i=0;i<=3;i++) {

array1[i]=

(char) ('A' + i);

System.

out.println("isi" + i + ": " + array1[i]);

}

array[i]= value;

Index tempat

penyimpanan nilai

(17)

Arrays

Dynamic Array Expansion

Dalam membuat array kita harus menetapkan ukuran

array sehingga kompiler dapat mengalokasikan besaran

memory yang akan dialokasikan bagi array

int [] array1 = new int [10];

Teknik

dynamic array expansion

memungkinkan

untuk menentukan ukuran array lebih fleksibel dan

memungkinkan pengaturan besarnya ukuran array saat

run time.

int [] arr = new int[10];

int [] original = arr;

arr = new int [12];

for( int i = 0; i < 10; i++ )

arr[i] = original[i];

original = null;

Ukuran array

Ukuran awal

arr

(18)

Dynamic Array Expansion

int [] arr = new int[10];

… ;

int [] original = arr;

arr = new int [12];

for( int i = 0; i < 10; i++ )

arr[i] = original[i];

original = null;

int [] arr = new int[10];

… ;

int [] original = arr;

arr = new int [12];

for( int i = 0; i < 10; i++ )

arr[i] = original[i];

original = null;

(a)Mula2, arr

merepresentasikan 10

integer;

(b)Original

merepresentasikan 10

integer yang sama

dengan arr;

(c) arr merepresentasikan 12

integer, yang sepuluh isi

pertamanya di-copy dari

original; dan

(19)

Arrays

Enhanced

for

Loop

& method

length

Code di atas akan mencetak isi suatu array

dengan nama arrVariable, setiap satu loop isi

arrVariable akan diisi ke value kemudian value

dicetak.

Berdasarkan kode di atas, variable panjang akan

berisi nilai panjang dari array nama, yaitu: 4

for(String value : arrVariable)

System.out.println(value);

for(String value : arrVariable)

System.out.println(value);

String [] nama = {"Budi", "Beni", "Betty", “Randy"};

int panjang = nama.

length;

(20)

Enhanced

for

Loop

& method

length

public class allAboutArray {

public static void main(String[] args) {

String [] nama = {"Budi", "Beni", "Betty", “Randy"};

for( String cetak : nama )

System.

out.println(cetak);

System.

out.println("---");

for(int i=0;i<nama.length;i++)

System.

out.println(nama[i]);

(21)

Exception Handling

Exceptions

digunakan untuk menangani

kejadian eksepsi atau suatu kejadian yang

tidak diharapkan (spt: error)

try

block digunakan untuk menguji kode

yang mungkin akan menghasilkan suatu

exception.

catch

block digunakan untuk melakukan

proses jika suatu exception terjadi.

The

finally

clause selalu dijalankan sebelum

(22)

Exception Handling

import java.util.Scanner;

public class exceptionTryCatch {

public static void main( String [] args ){

Scanner in =

new Scanner( System.

in );

int x;

System.

out.println( "Enter an integer: " );

try {

String oneLine = in.nextLine( );

x = Integer.

parseInt( oneLine );

System.

out.println( "Half of x is " + ( x / 2 ) );

}

catch( NumberFormatException e ) {

System.

out.println("anda harus memasukkan angka

bulat");

System.

out.println( e );

}

}

}

import java.util.Scanner;

public class exceptionTryCatch {

public static void main( String [] args ){

Scanner in =

new Scanner( System.

in );

int x;

System.

out.println( "Enter an integer: " );

try {

String oneLine = in.nextLine( );

x = Integer.

parseInt( oneLine );

System.

out.println( "Half of x is " + ( x / 2 ) );

}

catch( NumberFormatException e ) {

System.

out.println("anda harus memasukkan angka

bulat");

System.

out.println( e );

}

}

(23)

The Scanner Type

Metode termudah untuk membaca

input adalah dengan menggunakan

Scanner

Untuk menggunakan scanner perlu

melakukan import sbb:

Membuat object type scanner

import java.util.Scanner;

import java.util.Scanner;

(24)

The Scanner Type

The simplest method for reading formatted input is to use a

Scanner

Method:

nextLine

: untuk membaca satu baris input

next

: untuk membaca input string

nextInt

: untuk membaca integer

nextDouble

: untuk membaca double

hasNextLine

: untuk verifikasi apakah ada input baris berikutnya

(outputnya: boolean)

hasNext

: untuk verifikasi apakah ada input string berikutnya

(outputnya: boolean)

hasNextInt

: untuk verifikasi apakah ada input integer berikutnya

(outputnya: boolean)

(25)

The Scanner Type

FileReader

Metode termudah untuk membaca

input dari file teks adalah dengan

FileReader

dan

Scanner

Untuk menggunakan scanner perlu

melakukan import sbb:

Membuat object type scanner

dengan FileReader

import java.util.Scanner;

import java.io.FileReader;

import java.io.FileNotFoundException;

import java.util.Scanner;

import java.io.FileReader;

import java.io.FileNotFoundException;

(26)

Contoh Penggunaan FileReader

import java.util.Scanner;

import java.io.FileNotFoundException;

import java.io.FileReader;

public class bacaFile {

public static void main(String[] args) {

String file = “bio.txt”;

try {

Scanner fs = new Scanner(new FileReader(file));

String isi = fs.nextLine();

System.out.println(isi);

}

}

catch (FileNotFoundException fe) {

System.out.println("Invalid filename. Try another:");

}

}

}

import java.util.Scanner;

import java.io.FileNotFoundException;

import java.io.FileReader;

public class bacaFile {

public static void main(String[] args) {

String file = “bio.txt”;

try {

Scanner fs = new Scanner(new FileReader(file));

String isi = fs.nextLine();

System.out.println(isi);

}

}

catch (FileNotFoundException fe) {

System.out.println("Invalid filename. Try another:");

}

(27)

Latihan (Tugas)

Buat program untuk membaca file teks.

Kemudian tampilkan seluruh isi file teks

tersebut pada Konsol.

Kirim ke:

augury.elrayeb@upj.ac.id

(28)

See You Next Session

Referensi

Dokumen terkait

Mengetahui hubungan antara kebiasaan berada di luar rumah pada malam hari dengan kejadian malaria diwilayah kerja Puskesmas Tarusan tahun 2011.. Mengetahui hubungan

Memang pada saat ini ada beberapa merger yang dalam proses menuju ke arah kerja sama dengan kita dengan lebih erat namun kami berada dalam kondisi dimana kami belum

pemeriksaan. Pada tahun ini pencapaian sasaran dianggap sudah berhasil karena sasaran ini sudah sesuai dengan target yang ditetapkan sehingga proses pemeriksaan dan

Tujuan dari penelitian ini adalah mengetahui pengaruh slogan iklan, pesan iklan, cerita iklan Kuku Bima Ener-g terhadap sikap dan minat beli konsumen. Metode yang

Pembangunan Rumah Oleh Perum Perumnas Provinsi Jawa Barat Tahun 2011. No Nama

bahwa Peraturan Bupati Badung Nomor 70 Tahun 2011 tentang Pembentukan Unit Layanan Pengadaan (ULP) Pemerintah Kabupaten Badung sebagaimana telah diubah dengan

Berkaitan dengan tugas menetapkan kegiatan dan jadwal acara rapat DPRD, Panitia Musyawarah menetapkan acara DPRD untuk satu masa sidang atau sebagian dari suatu masa

Pemecahan masalah pembelajaran permainan sepak bola di Sekolah Dasar Negeri Penusupan 04 Kecamatan Pangkah Kabupaten Tegal melalui teknik menggiring bola