Exception Dan String Pada Java

Exception Handling

Dasar Exception
Exception adalah seluruh event yang menjalankan alur proses normal pada program Event ini biasanya berupa kesalahan (error) dari beberapa bentuk, disebabkan program kita berakhir tidak normal. Dalam bahasa java, ketika terjadi kesalahan, otomatis akan dilemparkan sebuah objek yang disebut exception, yang kemudian dapat diproses lebih lanjut oleh yang siap menangani tersebut.

Jenis-jenis Exception
Input Mismatch Exception
Input Mismatch Exception adalah kesalahan saat memasukkan nilai yang tidak sesuai.

import java.util.*;
          public class Square {
          public static void main (String [] args) {
                Scanner scan = new Scanner (System.in);
                Int num;

                 System.out.println (“Masukkan bilangan bulat”);
                 Num = scan.nextInt ();
                 System.out.println (“kuadrat ‘+num+’adalah”+num*num);
                 }
}

Note : akan muncul kesalahan jika num-nya diisi selain angka


Arithmetic Exception
Arithmetic Exception adalah kesalahan yang akan terjadi pada perhitungan matematika. Kesalahan atau Error saat di run (program yang melakukan operasi pembagian dengan nilai pada bilangan integer).

import java.util.Scanner;
           public class Pembagian {
           public static void main (String [] args) {
                   Scanner input = new Scanner (System.in);
                    //meminta user untuk memasukkan dua angka integer

              System.out.println (“Masukkan dua buah integer : “);
                       int angka1 = input.nextInt ();
                       int angka2 = input.nextInt ();

               System.out.println (“Hasil dari”+angka+”angka1+”dibagi+angka2 adalah:”+(angka1/angaka2));
         }
}


Class Not Found Exception
Class Not Found Exception adalah class yang tidak ditemukan.

public static void main (String [] args) {

        System.out.println (“Java lang ClassNotFoundException simulator Training 5”);
        System.out.println (“author : Pierre-Hugues charbonnenu”);
        System.out.println (“http://javaeesupportpatterns.blogspot.com”);

        Switch (PROBLEM_SCENARIO) {
        //scenario #1_class ForName ()
        Case1 :

                   Class ForName (“Mysql.jdbc.Driver”);
                   System.out.println (“\n** problem scenario #1 : class ForName()**\n”);
             try {
                   Class <?> new class : class ForName (CLASS TO LOAD);
                   System.out.println (“class”+new class+”Found Successfully”);
                   }
              catch (ClassNotFoundException ex) {
                  }
           }
}





No Such Method Exception
No Such Method Exception adalah ketika anda akan menggunakan refleksi dan mencoba untuk secara dinamis menggunakan metode dikelas dan metode itu sebenarnya tidak ada.

import java.lang.reflect.method;
          public class JavaReflection Example2 {
                 public JavaReflection Example2 () {
                        class c ;
                 try {
                       c = class.forName(“Java.lang.string”);
                 try {
                       class [] paramTypes = new class [5];
                       method m = c.getDeclaredMethod (“tooMethod” paramTypes);
                  }
                       Cath (security Exception e)
                  {
                       e.printn StackTrace ();
                  }
                       Cath (NoSuchException e)
                   {
                        e.printn StackTrace ();
                    }
             }
                    Cath (classNotfoundException e) {
                     //deal with the exception here…..
                    e. print StackTrace ();
               }
         }
                    public static void main (String [] args) {
                    new java.Reflection exception e 2 ();
}


Array Index Out Bound Exception
Array Index Out Bound Exception adalah pengecualian java yang dilempar karena fakta bahwa program sedang mencoba mengakses sebuah elemen pada posisi yang berada diluar batas array, maka kata-kata “out of Bound” dengan kata lain program sedang berusaha mengakses elemen pada index yang berada diluar batas array.

public static void main (String [] args) {
        List <integer> elements : new ArrayList <> ();
        element.add (10);
        int firstElement = element.get (-1);
        System.out.println (firstElement);
}


Null Pointer Exception
Null Pointer Exception adalah kesalahan yang terjadi ketika program berusaha mengakses atribut atau method dari sebuah objek menggunakan variable yang tidak sesuai dengan objek.

Class Barang {
        private String kode ;
        private String nama ;
        private double harga ;
public void main (String Vkode) {
        try {
               kode = vkode ;
               if (kode==null) {
         throw new
               NullPointerException ()
              }
}
          Catch (NullPointerException npe) {
                  System.out.printerln (“kesalahan : “+”kode barang tidak boleh null”);
                 }
}
public string getkode () {
        return kode ;
        }
public void setNama (String vNama) {
        try {
              nama : Vnama ;
              if (nama : null) {
        throw new
              NullPointerException ();
              }
   }
   


             Catch (NullPointerException npe) {
             System.out.println (“kesalahan : “+”Nama barang tidak boleh null”);
}
public String getNama () {
         return nama ;
       }
}


public class TestException {
        public static void main (String [] args) {
                Barang obj = new barang ();
                Obj setKode (null);
                Obj setNama (“Buku tulis”);

         System.out.println (“\n kode “ + obj getKode ());
         System.out.println (“Nama” + obj getNama ());
       }
}


Number Formal Exception
Number Formal Exception yang mungkin dilemparkan ketika anda mencoba untuk mengubah string menjadi angka.

Public classConvert+StringToNumber {
        try {
        //Internasional Error
               String 5 = “FOTBAR” ;
               Int 5 =Integer.parseint (5);
        //This line of code will never reached
                System.out.println (int value = + i);
           }
                 Cath (Number Format Exception nfe) {
                 Nfe.print + stackTrade () ;
            }
}




Negative Array Size Exception
Negative Array Size Exception adalah salah satu pengecualian untuk ukuran array negative. Seperti yang susah dipelajari sebelumnya, ketika mendefinisikan sebuah array di java kita harus memberikan nilia positif. Tetapi, ada situasi tertentu dimana nilai untuk ukuran array menjadi negative. Misalnya, saat menetapkan hasil perhitungan matematika menjadi nilai ukuran negatif dengan menggunakan Negative Array Size Exception.


Package Exception ;
        Public class NegativeArray {
                Public static void main (String [] args) {
                         try {
                               int data [] = new int [-1];//size array negative
                               Data [-1] = 9;
                               System.out.println (data [-1]);
                         }
                              Catch (NegativeArraySizeException e) {
                              System.out.println (“deklarasi size array tidak boleh negative + e);
                         }
            }


Penanganan Exception

Try, adalah blok yang akan di cek dan disimpan di dalam coding nya. Catch, adalah blok yang akan di eksekusi jika terdapat exception. Finally, adalah blok yang akan selalu di eksekusi meskipun ada atau tidak ada exception. Throw, melempar suatu bug atau kesalahan yang dibuat secara manual. Disimpan di blok try. Throw, digunakan untuk mengenali daftar eksepsinyang mungkin di throw oleh suatu method.

STRING

Penjelasan String
String vs Char
Deklarasi String
Inisialisasi String
Menampilkan String
Method String
Concatenation String
String Buffer

PENJELASAN STRING
String merupakan tipe data untuk menyimpan nilai berupa teks. String merupakan class (tipe data reference). Ketika variabel bertipe String dibuat, secara otomatis compiler Java akan membuatkan sebuah object String. Dalam JDK, class String disimpan dalam package java.lang

STRING vs CHAR
String dapat menyimpan lebih dari satu karakter (teks). Char hanya dapat menyimpan satu karakter. String merupakan tipe data reference. Char merupakan tipe data primitif. Untuk melakukan inisialisasi menggunakan tanda “ (double-quote). Inisialisasi char menggunakan tanda „ (single-quote).

DEKLARASI STRING
Sebenarnya, ketika dideklarasikan variabel bertipe String maka akan dibuat sebuah object. Walaupun secara implisit tidak dituliskan new.
Ada beberapa cara deklarasi String, diantaranya sbb :
1. String nama_variabel;
2. String nama_variabel = nilai;
3. String nama_variabel = new String(char);
4. Dll.


Deklarasi String (Bentuk 1)

 Mendeklarasikan variabel String seperti
pendeklarasian variabel biasa.

 Syntax : String nama_variabel;

Contoh :
String nama;
// jika ditampilkan akan mengeluarkan hasil berupa
null.
(Secara otomatis akan dibuatkan object String dengan
variabel reference bernama nama)


Deklarasi String (Bentuk 2)

 Mendeklarasikan variabel String seperti instansiasi
object.

 Syntax : String nama_var = new String();

 Contoh :
String nama = new String();
// jika ditampilkan tidak akan mengeluarkan hasil
apapun karena hanya menjalankan constructor
kosong.

Deklarasi String (Bentuk 3)

 Mendeklarasikan variabel String sekaligus
inisialisasi atau pengisian nilai.

 Syntax :
String nama_var = nilai;
atau
String nama_var = new String(nilai);


 Contoh :
String nama = ”Cinta Laura”;
String nama = new String(”Cinta Laura”);
(sama-sama akan memanggil constructor yang dimiliki oleh class String
untuk menginisialisasi nilai)


Deklarasi String (Bentuk 4)

 Mendeklarasikan variabel String dan mengisinya
dengan array karakter.

 Syntax : String nama_var = new String(char[]);

 Contoh :
char a[]={„a‟,‟b‟,‟c‟,‟d‟,‟e‟};
String nama = new String(a);
// jika ditampilkan akan keluar hasil berupa
string abcde.


Deklarasi String (Bentuk 5)

Mendeklarasikan variabel String dan mengisinya
dengan sub-array dari array karakter yang
dideklarasikan.

 Syntax : String nama_var = new String(char[],int offset, int count);

 Penjelasan :
char[] = variabel bertipe array of character.
offset = index awal dari sub-array.
count = jumlah karakter yang akan diambil.


Contoh : Bentuk 5 (syntax 1)

 Contoh :

char a[]={„a‟,‟b‟,‟c‟,‟d‟,‟e‟};
String nama = new String(a,1,3);
output :bcd
//karena index array dimulai dari 0 maka dengan
offset=1 karakter awal dari sub-array adalah „b‟.
Kemudian dengan count=3 akan mengambil 3 karakter
kekanan sehingga jika String nama ditampilkan
hasilnya bcd.
Inisialisasi String

Untuk memberi nilai atau melakukan inisialisasi variabel
bertipe String digunakan tanda double-quote (petik ganda)
yang diletakkan diawal dan diakhir teks (nilai variabel).
Inisialisasi bisa dilakukan ketika deklarasi maupun setelahnya.
1. Inisialisasi ketika deklarasi
Contoh : ada pada slide sebelumya (bentuk 3,4,5)
2. Inisialisasi setelah deklarasi
Contoh :
String nama; //atau bisa menggunakan new*
nama = “Osama”;
*String nama = new String(); inisialisasi

Menampilkan String
Untuk menampilkan isi dari variabel String dapat
menggunakan perintah print() atau println().
Perbedaannya, print() menampilkan String tanpa
ganti baris, sedangkan println() menampilkan String
dengan tambahan ganti baris diakhir String.

Method String
Ada banyak method yang dimiliki class String,
diantaranya yang sering banyak di-implementasi
adalah :
1. length()
2. substring()
3. charAt()
4. indexOf
5. toUpperCase()
6. toLowerCase()

1. length()

Digunakan untuk mengetahui panjang String.
Syntax : variabel_String.length();
Contoh :
public class TestString{
String nama = "cinta laura";
System.out.println(nama.substring(7,10));
}
Output : 11

2. substring()

Digunakan untuk mendapatkan potongan String.
 Syntax :
variabel_string.substring(indexAwal,Bataskarakter);
indexAwal = index awal sub-string.
batasKarakter= Batas karakter sub-string
 Contoh :
public class TestString{
String nama = "cinta laura";
System.out.println(nama.substring(7,10));
Output : aura
charAt()
Digunakan untuk mengambil karakter dari String
pada posisi index tertentu.
Syntax : variabel_string.charAt(index);
Contoh :
public class TestString{
String nama = "cinta laura";
System.out.println(nama.charAt(10));
}
Output : a

3. indexOf()

Digunakan untuk mengetahui nilai index atau
posisi karakter tertentu pada String.
Syntax : variabel_string.indexOf(„karakter‟);
Contoh :
public class TestString{
String nama = "cinta laura";
System.out.println(nama.indexOf(„a‟));
}
Output : 4
(Jika terdapat karakter yang sama dalam String maka yang diambil adalah
index dari karakter yang paling kiri)

4. toUpperCase()

Digunakan untuk konversi atau mengubah semua
karakter String menjadi huruf besar.
Syntax :
Contoh : public class TestString{
String nama = "cinta laura";
System.out.println(nama.toUpperCase());
}
Output : CINTA LAURA

5. toLowerCase()

Digunakan untuk konversi atau mengubah semua
karakter String menjadi huruf kecil.
Syntax :
Contoh :
public class TestString{
String nama = “CINTA LAURA";
System.out.println(nama.toLowerCase());
Output : cinta laura

A.  Concatenation String
    Penggabungan dua String dapat dilakukan dengan DUA CARA :
   1. menggunakan operator + (tambah)
       Contoh : public class TestString{
                       String teks1= “Aku cinta ";
                       String teks2= “Bahasa Java";                        System.out.println(teks1 + teks2);
                      }
•Output : Aku cinta Bahasa Java

    2. Fungsi atau metode concat(String x)
•Dipakai untuk menggabungkan string x dengan suatu string.
•Contoh : “to”.concat(“get”).concat(“her”) akan menghasilkan “together”.

Replace
•Fungsi atau metode replace(char lama, char baru) dipakai untuk mengubah huruf lama menjadi huruf baru.
                    Replace (char lama, char baru)
•Contoh :
 replace(“a”,”i”) akan mengubah huruf a menjadi i.
 replace(“ri”,”ya99”) akan mengubah kumpulan huruf ri menjadi ya99.

□ Substring (int awal, int akhir)
•Fungsi atau metode substring(int awal, int akhir) dipakai untuk mengambil sejumlah string dari posisi „awal‟ sampai „akhir‟.
•Tapi „akhir‟ adalah akhir-1.
•Posisi awal suatu string adalah 0.
•Contoh:
 “Bahasa”.substring(1,5) akan mengambil string dari posisi 1 sebanyak
  5-1. Hasilnya “ahas”.
 “Programming”.substring(3,6) akan menghasilkan “gra”.

III. Class StringBuffer
Kelas yang memungkinkan penambahan atau penyisipan string. Ada    beberapa method yang terdapat pada class StringBuffer adalah :

1. Capacity()
•Method ini digunakan untuk mengetahui kapasitas dari suatu stringbuffer
•Contoh :
•String kata = “java”;
•StringBuffer baru = new StringBuffer();
•StringBuffer baru1 = new StringBuffer(50);
•StringBuffer baru2 = new StringBuffer(kata);

□ Capacity()
•Fungsi atau metode capacity() dipakai untuk mengetahui berapa kapasitas dari suatu BufferString.
•Defaultnya adalah 16.
•Fungsi atau metode length() dipakai untuk mengetahui panjang stringnya.
•Jika panjang string lebih kecil dari kapasitasnya, maka kapasitasnya akan tetap.
•Jika panjang string melebihi dari kapasitasnya, maka secara otomatis kapasitas akan diperbesar dua kali lipat plus 2 dari kapasitas sebelumnya.

2. Append ()
•Fungsi atau metode append(x) dipakai untuk menambah karakter atau string yang terdapat pada x ke suatu string. Contoh :


3. Insert (x,y)
•Fungsi atau metode insert(x,y) dipakai untuk menyelipkan karakter atau string yang terdapat pada y ke suatu string pada posisi x.



4. Delete (awal,akhir)
•Fungsi atau metode delete(awal,akhir) dipakai untuk menghapus string yg terdapat pada posisi ‘awal’ sampai pada posisi ‘akhir’-1. Contoh :

5. Reverse()
•Method ini digunakan untuk membalik isi dari variabel StringBuffer
•Contoh :
•String kata = “StringBuffer”;
•StringBuffer baru2 = new StringBuffer(kata);
•System.out.println(“baru awal : “+baru2);
•System.out.println(“baru reverse() : ”+baru2.reverse());

6. setCharAt()
•Method ini digunakan untuk mengubah karakter pada indeks tertentu
•Contoh :
•String kata = “StringBuffer”;
•StringBuffer baru2 = new StringBuffer(kata);
•System.out.println(“baru awal : ”+baru);
•baru2.setCharAt(0, „a‟); //mengubah S jadi a.

Komentar

Posting Komentar

Postingan populer dari blog ini