Apa itu String di Jawa?
Dalam pemrograman, string sangat umum digunakan. String di java adalah objek yang mewakili urutan karakter yang didukung oleh array char. Kelas string tidak dapat diubah di Java dan mengimplementasikan antarmuka Comparable , Serializable , dan CharSequence . Mari kita lihat contoh untuk memahaminya.String str = "string"
Disini str adalah barisan 6 karakter yaitu s, t, r, i, n, dan g.
Indeks Array Char | 0 | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|---|
Nilai | S | T | R | Saya | N | G |
Alamat Memori | 0x12824 | 0x12825 | 0x12826 | 0x12827 | 0x12828 | 0x12829 |
Cara inisialisasi String
Ada dua cara untuk menginisialisasi string.- String Literal
- Operator Baru
String Harafiah
Cara termudah dan paling langsung untuk mendeklarasikan string digunakan dalam contoh di atas. Setiap kali kompiler menafsirkan string literal, itu selalu dikonversi ke objek String.String str = "string";
Operator Baru
Kita juga dapat menginisialisasi string dengan menggunakan operator baru.String strNew = new String("using new operator");
Contoh
import java.io.*;
import java.lang.*;
class StringInitializationExample {
public static void main(String[] args)
{
//declare java string with a string literal
String str = "a string literal";
System.out.println("String str = " + str);
//declare string using new operator
String strNew = new String("using new operator");
System.out.println("String strNew = " + strNew);
}
}
Keluaran
String str = string literal String strNew = menggunakan operator baru
String vs StringBuilder vs StringBuffer
Kita sudah membahas apa itu kelas String jadi kita akan membahas dua kelas lainnya dan tujuannya, beserta alasan mengapa Java memperkenalkan kedua kelas ini padahal sudah memiliki kelas String untuk kita. Lebih baik Anda pergi ke atas dan melakukan revisi untuk kelas String untuk memahaminya dengan lebih baik.Alasan
Seperti yang kita ketahui bahwa objek kelas String tidak dapat diubah sehingga setiap kali kita perlu mengubah string, objek saat ini tidak akan diubah tetapi nilai yang diubah selalu disimpan sebagai objek String baru. Jadi jika kita perlu mengubah nilainya berulang kali, memori juga akan terpakai. Mempertahankan poin ini, Java telah memberi kita kelas StringBuilder dan StringBuffer . Sekarang kita akan melihat kegunaannya dalam skenario ini.StringBuffer
String adalah representasi dari rangkaian karakter yang tidak dapat diubah tetapi StringBuffer adalah rangkaian karakter yang dapat diubah . Ia menggunakan sebagian besar metode kelas String bersama dengan beberapa metode miliknya sendiri untuk mengubah konten dan urutan karakter. Ini aman untuk thread karena metodenya disinkronkan untuk digunakan oleh banyak thread, menjaga urutan serial. Ini mengimplementasikan antarmuka Serializable , Appendable , dan CharSequence .Sintaksis
StringBuffer str = new StringBuffer("Happy Java Programming");
Pembuat String
StringBuilder juga mewakili urutan karakter yang bisa berubah. Ini menyediakan API, yang kompatibel dengan kelas StringBuffer tetapi tidak aman untuk thread. Jadi jika banyak thread tidak terlibat, lebih baik menggunakan kelas StringBuilder karena dalam banyak kasus lebih cepat daripada kelas StringBuffer . Metode utama kelas ini adalah penyisipan dan penambahan. Ini juga mengimplementasikan antarmuka Serializable , Appendable , dan CharSequence .Sintaksis
StringBuilder str = new StringBuilder("Happy Java Programming");
Operasi String
Di Java kita dapat melakukan operasi string seperti Penggabungan , Perbandingan , Pemisahan , Pencarian Panjang , Penggantian String , dan sebagainya.Metode String
Kelas Java String menyediakan berbagai metode untuk memanipulasi string atau melakukan operasi yang dibahas di atas. Mari kita lihat tabel di bawah untuk beberapa metode string ini.Metode | Keterangan |
---|---|
Char charAt(int indeks) | Ini mengembalikan nilai char pada indeks yang disediakan. |
Rangkaian string(String str) | Ia mengembalikan string dengan menggabungkan string tertentu ke akhir string ini. |
boolean berisi (CharSequence s) | Ia mengembalikan nilai true jika string berisi urutan nilai char tertentu. |
konten booleanEquals(CharSequence cs) | Itu cocok dengan string dengan urutan karakter yang disediakan. |
konten booleanEquals(StringBuffer sb) | Ini mencocokkan string dengan buffer string yang disediakan. |
boolean berakhirDengan(akhiran string) | Ini membandingkan akhir string dengan akhiran yang disediakan. |
boolean sama dengan(Objek dan Objek) | Itu mencocokkan string dengan objek yang disediakan. |
boolean sama denganIgnoreCase(String anotherString) | Metode ini membandingkan dua string tanpa mempertimbangkan sensitivitas huruf besar-kecil. |
format String statis (Format string, Objek… args) | Ia mengembalikan string yang diformat dengan menggunakan format dan argumen yang disediakan. |
byte getBytes() | Metode ini menggunakan rangkaian karakter default platform untuk menyandikan string ke dalam urutan byte, yang kemudian disimpan ke dalam array byte baru. |
batal getChars(int mulai, int akhir, char[] dst, int dstBegin) | Ini menyalin karakter dari string ke dalam array karakter tujuan. |
ke dalam kode hash() | Ini mengembalikan kode hash untuk string. |
int indeks(int ch) | Ia mengembalikan indeks untuk karakter tertentu yang muncul pertama kali dari string. |
int indeksDari(int ch, int dariIndeks) | Ia mengembalikan indeks untuk karakter tertentu yang muncul pertama kali mulai dari indeks yang disediakan dalam string ini. |
int indeks(String str) | Ia mencari substring yang disediakan dalam string dan mengembalikan indeks pada kemunculan pertama. |
int indeksDari(String str, int dariIndeks) | Ia mulai mencari substring yang disediakan dalam string dari indeks yang diberikan dan mengembalikan indeks pada kemunculan pertama. |
Magang string() | Metode ini mengembalikan representasi kanonik dari string. |
int lastIndexOf(int ch) | Metode ini mencari karakter yang disediakan dalam string dan mengembalikan indeks kemunculan terakhir. |
int lastIndexOf(int ch, int dariIndex) | Metode ini mencari mundur dari indeks yang diberikan untuk karakter yang disediakan dalam string dan mengembalikan indeks kemunculan terakhir. |
int lastIndexOf(String str) | Metode ini mencari substring yang disediakan dalam string dan mengembalikan indeks kemunculan terakhir. |
int lastIndexOf(String str, int dariIndex) | Metode ini mencari mundur dari indeks yang diberikan untuk substring yang disediakan dalam string dan mengembalikan indeks kemunculan terakhir. |
ke dalam panjang() | Metode ini mengembalikan panjang string. |
kecocokan boolean (String regex) | Ia mengembalikan nilai benar atau salah dengan mencocokkan string dengan ekspresi reguler yang disediakan. |
Penggantian string (char oldValue, char newValue) | Metode ini mengembalikan string setelah mengganti semua nilai lama yang disediakan dengan nilai baru dalam string. |
String[] terbelah(String regex) | Metode ini menemukan semua kecocokan sesuai dengan ekspresi reguler yang disediakan dalam string dan membaginya berdasarkan kecocokan tersebut. |
boolean dimulaiDengan(Awalan string) | Ia mengembalikan benar atau salah dengan menguji awalan string dengan awalan yang disediakan. |
Substring string (int indeks awal) | Metode ini mengembalikan string yang merupakan substring dari string ini. |
String ke Huruf Kecil() | Itu mengubah semua karakter string menjadi huruf kecil menggunakan aturan lokal default. |
Pemangkasan tali() | Metode ini menghapus semua spasi putih di depan dan di belakang string dan mengembalikannya. |
Nilai String statis(char c) | Ia mengembalikan representasi string dari argumen char. |
Contoh
import java.io.*;
import java.lang.*;
class JavaStringsExample {
public static void main(String[] args) {
//create a string
String greeting = "Hello! World";
System.out.println("String: " + greeting);
//getting the length of greeting object
int length = greeting.length();
System.out.println("Length: " + length);
//create first string
String first = "Java ";
System.out.println("First String: " + first);
//create second string
String second = "Programming";
System.out.println("Second String: " + second);
//joining two strings
String joinedString = first.concat(second);
System.out.println("Joined String: " + joinedString);
String jpf = "Java programming";
String jps = "Java programming";
String jpt = "Python programming";
//compare jpf and jps strings
boolean result1 = jpf.equals(jps);
System.out.println("Strings jpf and jps are equal: " + result1);
//compare jpf and jpt strings
boolean result2 = jpf.equals(jpt);
System.out.println("Strings jpf and jpt are equal: " + result2);
//converting jpf to uppercase
System.out.println("Upper case jpf: " + jpf.toUpperCase());
//replacing g character with v in jpf
System.out.println("Replacing g with v in jpf: "+jpf.replace("g", "v"));
}
}
Keluaran
Tali: Halo! Panjang Dunia: 12 String Pertama: Java String Kedua: Pemrograman String Gabungan: String Pemrograman Java jpf dan jps sama: true String jpf dan jpt sama: false Huruf besar jpf: PEMROGRAMAN JAVA Mengganti g dengan v di jpf: java provramminv
GO TO FULL VERSION