Dalam tutorial ini, kita akan belajar tentang Java Strings, cara membuatnya, dan berbagai metode String dengan bantuan contoh.
Di Jawa, string adalah urutan karakter. Misalnya, "hello" adalah string yang berisi rangkaian karakter 'h', 'e', 'l', 'l', dan 'o'.
Kami menggunakan tanda kutip ganda untuk mewakili string di Java. Sebagai contoh,
// create a string String type = "Java programming";
Di sini, kami telah membuat variabel string bernama type. Variabel diinisialisasi dengan string Java Programming
.
Catatan : String di Jawa tidak tipe primitif (seperti int
, char
, dll). Sebaliknya, semua string adalah objek dari kelas yang telah ditentukan sebelumnya bernama String
.
Dan, semua variabel string adalah instance String
kelas.
Contoh: Buat String di Java
class Main ( public static void main(String() args) ( // create strings String first = "Java"; String second = "Python"; String third = "JavaScript"; // print strings System.out.println(first); // print Java System.out.println(second); // print Python System.out.println(third); // print JavaScript ) )
Dalam contoh di atas, kami telah membuat tiga string bernama first, second, dan third. Di sini, kami langsung membuat string seperti tipe primitif.
Namun, ada cara lain untuk membuat string Java (menggunakan new
kata kunci). Kita akan mempelajarinya nanti di tutorial ini.
Operasi String Java
Java String menyediakan berbagai metode untuk melakukan operasi yang berbeda pada string. Kami akan melihat beberapa operasi string yang umum digunakan.
1. Dapatkan Panjang String
Untuk mencari panjang sebuah string, kami menggunakan length()
metode String. Sebagai contoh,
class Main ( public static void main(String() args) ( // create a string String greet = "Hello! World"; System.out.println("String: " + greet); // get the length of greet int length = greet.length(); System.out.println("Length: " + length); ) )
Keluaran
String: Halo! Panjang Dunia: 12
Dalam contoh di atas, length()
metode menghitung jumlah total karakter dalam string dan mengembalikannya. Untuk mempelajari lebih lanjut, kunjungi Java String length ().
2. Gabungkan dua String
Kita bisa menggabungkan dua string di Java menggunakan concat()
metode ini. Sebagai contoh,
class Main ( public static void main(String() args) ( // create first string String first = "Java "; System.out.println("First String: " + first); // create second String second = "Programming"; System.out.println("Second String: " + second); // join two strings String joinedString = first.concat(second); System.out.println("Joined String: " + joinedString); ) )
Keluaran
String Pertama: Java String Kedua: Pemrograman Joined String: Pemrograman Java
Dalam contoh di atas, kami telah membuat dua string bernama pertama dan kedua. Perhatikan pernyataannya,
String joinedString = first.concat(second);
Di sini, kami concat()
menggabungkan metode pertama dan kedua dan menetapkannya ke variabel joinString.
Kami juga dapat menggabungkan dua string menggunakan +
operator di Jawa. Untuk mempelajari lebih lanjut, kunjungi concat String Java ().
3. Bandingkan dua String
Di Java, kita bisa membuat perbandingan antara dua string menggunakan equals()
metode ini. Sebagai contoh,
class Main ( public static void main(String() args) ( // create 3 strings String first = "java programming"; String second = "java programming"; String third = "python programming"; // compare first and second strings boolean result1 = first.equals(second); System.out.println("Strings first and second are equal: " + result1); // compare first and third strings boolean result2 = first.equals(third); System.out.println("Strings first and third are equal: " + result2); ) )
Keluaran
String pertama dan kedua sama: benar String pertama dan ketiga sama: salah
Dalam contoh di atas, kami telah membuat 3 string bernama pertama, kedua, dan ketiga. Di sini, kami menggunakan equal()
metode untuk memeriksa apakah satu string sama dengan yang lain.
The equals()
Metode pemeriksaan isi string sementara membandingkan mereka. Untuk mempelajari lebih lanjut, kunjungi Java String equals ().
Catatan : Kita juga bisa membandingkan dua string menggunakan ==
operator di Java. Namun, pendekatan ini berbeda dengan equals()
metode yang digunakan. Untuk mempelajari lebih lanjut, kunjungi Java String == vs equals ().
Metode String Java
Selain yang disebutkan di atas, ada berbagai metode string yang ada di Jawa. Berikut beberapa metode tersebut:
Metode | Deskripsi |
---|---|
substring () | mengembalikan substring dari string |
menggantikan() | mengganti karakter lama yang ditentukan dengan karakter baru yang ditentukan |
charAt () | mengembalikan karakter yang ada di lokasi yang ditentukan |
getBytes () | mengonversi string menjadi array byte |
Indeks() | mengembalikan posisi karakter yang ditentukan dalam string |
dibandingkan dengan() | membandingkan dua string dalam urutan kamus |
memangkas() | menghilangkan spasi di depan dan di belakangnya |
format() | mengembalikan string yang diformat |
membagi() | memecah string menjadi array string |
toLowerCase () | mengubah string menjadi huruf kecil |
toUpperCase () | mengubah string menjadi huruf besar |
Nilai dari() | mengembalikan representasi string dari argumen yang ditentukan |
toCharArray () | mengonversi string menjadi char array |
Karakter melarikan diri di String Java
Karakter escape digunakan untuk keluar dari beberapa karakter yang ada di dalam string.
Misalkan kita perlu menyertakan tanda kutip ganda di dalam string.
// include double quote String example = "This is the "String" class";
Karena string diwakili oleh tanda kutip ganda , kompilator akan memperlakukan "This is the" sebagai string. Karenanya, kode di atas akan menyebabkan error.
Untuk mengatasi masalah ini, kami menggunakan karakter escape di Java. Sebagai contoh,
// use the escape character String example = "This is the "String " class.";
Sekarang karakter escape memberi tahu kompiler untuk menghindari tanda kutip ganda dan membaca seluruh teks.
String Java Tidak Berubah
Di Jawa, string tidak dapat diubah . Artinya, sekali kita membuat string, kita tidak bisa mengubah string itu.
Untuk memahaminya lebih dalam, perhatikan contoh:
// create a string String example = "Hello! ";
Di sini, kami telah membuat variabel string bernama example. Variabel memegang string "Halo!".
Sekarang misalkan kita ingin mengubah string.
// add another string "World" // to the previous tring example example = example.concat(" World");
Di sini, kami menggunakan concat()
metode untuk menambahkan string Dunia ke string sebelumnya.
It looks like we are able to change the value of the previous string. However, this is not true
.
Let's see what has happened here,
- JVM takes the first string "Hello! "
- creates a new string by adding "World" to the first string
- assign the new string "Hello! World" to the example variable
- the first string "Hello! " remains unchanged
Creating strings using the new keyword
So far we have created strings like primitive types in Java.
Since strings in Java are objects, we can create strings using the new
keyword as well. For example,
// create a string using the new keyword String name = new String("Java String");
In the above example, we have created a string name using the new
keyword.
Here, when we create a string object, the String()
constructor is invoked. To learn more about constructor, visit Java Constructor.
Note: The String
class provides various other constructors to create strings. To learn more, visit Java String (official Java documentation).
Example: Create Java Strings using the new keyword
class Main ( public static void main(String() args) ( // create a string using new String name = new String("Java String"); System.out.println(name); // print Java String ) )
Create String using literals vs new keyword
Now that we know how strings are created using string literals and the new
keyword, let's see what is the major difference between them.
In Java, the JVM maintains a string pool to store all of its strings inside the memory. The string pool helps in reusing the strings.
While creating strings using string literals, the value of the string is directly provided. Hence, the compiler first checks the string pool to see if the string already exists.
- Jika string sudah ada , string baru tidak dibuat. Sebaliknya, referensi baru menunjuk ke string yang ada.
- Jika string tidak ada , string baru dibuat.
Namun, saat membuat string menggunakan kata kunci baru , nilai string tidak diberikan secara langsung. Karenanya string baru dibuat setiap saat.