11 Hal Wacana String Pada Java Yang Perlu Diketahui
Banyak hal yang sanggup dipelajari oleh pemula dalam Java mengenai String, sehingga dengan mempunyai pengetahuan mendalam mengenai method String yang berbeda akan menciptakan anda sanggup menggunakannya dengan tepat. String dalam Java yaitu class yang sangat Istimewa dan sering sekali digunakan.
Dikarenakan banyak dipakai pada aneka macam project pada Java, maka di sini akan di kupas mengenai 11 hal yang wajib diketahui mengenai String.
Di bawah ini yaitu klarifikasi mengenai String :
Dikarenakan banyak dipakai pada aneka macam project pada Java, maka di sini akan di kupas mengenai 11 hal yang wajib diketahui mengenai String.
Java String |
Penjelasan Tentang String
Apa sajakah yang penting diketahui mengenai String?Di bawah ini yaitu klarifikasi mengenai String :
- Cara menciptakan objek String pada java ada 2 cara.
Untuk menciptakan objek String sanggup dilakukan dengan dua cara, yaitu:- String a = "halo"; //membuat objek String dengan String literal
- String a = new String("halo"); //membuat objek String dengan operator new
- String bersifat Immutable dan final
String bersifat immutable, artinya sekali sudah dibuat, maka kita tidak sanggup memodifikasi isi dari String tersebut.
Jika kita memodifikasi String dengan method toLowerCase(), toUpperCase() ataupun method lainnya, maka akan selalu menghasilkan String yang baru.
Dikarenakan String yaitu final, maka tidak ada jalan siapapun untuk melaksanakan extend String atau meng-override fungsional apapun dari String. - String diatur dalam String pool
Setiap kali kita menciptakan objek String dengan memakai String literal, maka Java Virtual Machine (JVM) pertama kali akan mengusut konten dari objek yang dibuat.
Jika terdapat objek yang sama dalam String pool yang mempunyai konten yang sama, maka tumpuan akan dikembalikan pada objek tersebut, tanpa menciptakan objek baru.
JVM tidak melaksanakan investigasi String pool kalau kita menciptakan objek dengan memakai operator new.
Untuk lebih jelasnya :
public class StringTest { public static void main (String args []){
//Objek string pertama
String nama = "Halo";//variabel mengacu pada objek yang sama
String nama_1 = "Halo";
//objek String berbeda
String nama_2 = new String("Halo"); boolean a = nama==nama_1; System.out.println("Apakah nama dan nama-1 mengacu pada " + "objek String yang sama? " + a); boolean b = nama==nama_2; System.out.println("Apakah nama dan nama-2 mengacu pada " + "objek String yang sama? " + b); } }
Output:
Apakah nama dan nama-1 mengacu pada objek String yang sama? true
Apakah nama dan nama-2 mengacu pada objek String yang sama? false - String yaitu objek
String merupakan sebuah objek, bukanlah menyerupai tipe data primitif yang lain menyerupai int, double dan sebagainya. - Gunakan method equals () untuk membandingkan String
Untuk membandingkan String, anda sanggup memakai method equals().
Class String meng-override method equals() dan memperlihatkan konten equality dari String, yang menurut pada character dan urutan.
Jadi bila anda ingin membandingkan dua objek String, dan akan mengusut apakah String tersebut sama atau tidak, selalu gunakan method equals() daripada memakai operator equality (= =).
Contoh :
public class StringTest { public static void main (String args []){ String nama = "Halo"; String nama_1 = "halo"; String nama_2 = new String("Halo"); boolean a = nama.equals(nama_1); System.out.println("Apakah nama dan nama-1 sama? " + a); boolean b = nama.equals(nama_2); System.out.println("Apakah nama dan nama-2 sama? " + b); } }
Output:
Apakah nama dan nama-1 sama? false
Apakah nama dan nama-2 sama? true - Gunakan method indexOf(), lastIndexOf(), atau matches(String regex) untuk mencari ke dalam String
Class String menyediakan method yang lengkap untuk melihat apakah character atau sub-string atau suatu contoh terdapat pada objek string aktual.
Anda sanggup memakai method indexOf() yang akan mengembalikan nilai posisi dari character dalam String kalau character tersebut terdapat dalam String atau memperlihatkan -1 kalau character tersebut tidak terdapat dalam String.
Method lastIndexOf() yaitu method yang serupa, namun method ini bekerja dari bab paling selesai String.
Sementara itu method matches(String regex) bekerja lebih berpengaruh lagi. Dengan memakai method ini, anda sanggup mencari contoh ekspesi reguler di dalam String.
Contoh :
public class StringTest { public static void main (String args []){ String str = "Mempelajari String itu penting"; if(str.indexOf("itu") != -1){ System.out.println("String mengandung itu pada index : " + str.indexOf("itu")); } if(str.matches("M.*")){ System.out.println("String dimulai dengan M"); } str ="Belajar Java itu mudah"; if(str.lastIndexOf("a") != -1){ System.out.println("String mengandung a "
+ " terakhir pada index: " + str.lastIndexOf("a"));
System.out.println(); //Membuat array stringKu String[] string = {"halo", "128", "h4lo", "Halo"}; //Memeriksa apakah elemen array StringKu mengandung alfabet for(String stringKu : string) { System.out.println(stringKu + " mengandung alfabet : " + stringKu.matches(".*[A-Za-z].*")); } System.out.println(); //Memeriksa apakah String mengandung digit angka atau tidak String[] angka = {"123" , "+123", "234a", "halo"}; for(String angkaKu : angka) { System.out.println(angkaKu + " mempunyai digit angka" + " 0 - 9 : " + angkaKu.matches(".*[1-9].*")); } } } }
Output:
String mengandung itu pada index : 19
String dimulai dengan M
String mengandung a terakhir pada index: 20
halo mengandung alfabet : true
128 mengandung alfabet : false
h4lo mengandung alfabet : true
Halo mengandung alfabet : true
123 mempunyai digit angka 0 - 9 : true
+123 mempunyai digit angka 0 - 9 : true
234a mempunyai digit angka 0 - 9 : true
halo mempunyai digit angka 0 - 9 : false - Gunakan method substring() untuk mendapat bab String
Method substring() disediakan oleh Java untuk mendapat bab dari String. Pada dasarnya anda menetapkan awal dan selesai index, kemudian method substring() akan mengembalikan character dari range tersebut.
Index String dimulai dari 0 dan terus berlanjut hingga String.length() -1.
Perlu diingat juga, method ini mengembalikan white spaces menyerupai tab dan spasi.
Satu hal yang penting diingat dari method ini yaitu substring juga dibackup oleh character array, yang dipakai oleh String asli.
Ini sanggup berbahaya, kalau objek String orisinil sangat besar dan substring sangat kecil, alasannya walaupun hanya berupa sebuah fraksi yang kecil, namun sanggup memegang tumpuan dari array dengan lengkap.
Akibatnya objek String tersebut tidak masuk kedalam garbage collected, walaupun objek tersebut tidak mempunyai referensi.
Contoh:
public class StringTest { public static void main (String args []){ String str = "Belajar Java itu mudah"; //mengembalikan bab String dari index 0 - 12 String subString = str.substring(0,12); System.out.println("Substring: " + subString); } }
- Gunakan operator + untuk menggabungkan String
Operator + sanggup dipakai untuk menggabungkan String. Java tidak mendukung operator overloading, namun alasannya String yaitu spesial, maka operator + sanggup dipakai untuk menggabungkan dua String.
Operator + ini juga sanggup dipakai untuk mengkonversi tipe data int, char, long atau double menjadi String, dengan cara simpel yaitu dengan menggabungkannya dengan String kosong "".
Secara internal, + diimplementasikan memakai StringBuffer dan StringBuilder, yang dipakai untuk memanipulasi String. - Gunakan method trim() untuk menghilangkan spasi
String dalam Java menyediakan method trim() untuk menghilangkan white space di bab awal dan selesai dari String.
String juga menyediakan method replace() dan replaceAll() untuk me-replace character dari String. Method replaceAll bahkan mendukung verbal reguler.
Output:
Belajar Java itu gampang banget Belajar java itu gampang banget berguru java itu gampang banget berguru java itu gampang BANGet
- Gunakan method split() untuk meng-split String memakai verbal reguler
Untuk melaksanakan split pada String anda sanggup memakai method split(regex) yang sanggup mengambil String dalam bentuk verbal reguler apapun, dan meng-split String menurut hal tersebut.
Split String ini terutama sangat berkhasiat bila anda berhadapan dengan comma separated file atau CSV dan anda menginginkan bab individual dalam sebuah array String.
Contoh:
public class StringTest { public static void main (String args []){ String data = "Nama:,Umur:,Alamat:,Tanggal Lahir:" + ",Pendidikan Terakhir:"; //Split menurut tanda koma String [] biodata = data.split(","); //Mengetahui banyaknya pembagian System.out.println("Data Dibagi dalam : "
+ biodata.length + " bagian"); //Menampilkan hasil split for(String Biodata: biodata){ System.out.println(Biodata); } } }
Output:
Data Dibagi dalam : 5 bagian
Nama:
Umur:
Alamat:
Tanggal Lahir:
Pendidikan Terakhir: - Jangan menyimpan data yang sensitif pada String
String ternyata sanggup menyebabkan ancaman bila dipakai untuk menyimpan data sensitif menyerupai password, SSN atau gosip sensitif lainnya.
Karena String bersifat immutable pada Java, maka tidak ada jalan untuk menghapus konten dari String, dan alasannya String berada dalam String pool (dalam hal ini yaitu String literal), maka String tersebut akan berada lebih usang dalam Java heap.
Hal ini sanggup menyebabkan resiko oleh siapapun yang sanggup mengakses memori Java, menyerupai membaca dari memory dump.
Sebaliknya, char[] harus dipakai untuk menyimpan password atau data sensitif lainnya.
Output:
Substring: Belajar Java
Belum ada Komentar untuk "11 Hal Wacana String Pada Java Yang Perlu Diketahui"
Posting Komentar