Rentetan Java (Dengan Contoh)

Dalam tutorial ini, kita akan belajar mengenai Java Strings, cara membuatnya, dan pelbagai kaedah String dengan bantuan contoh.

Di Jawa, rentetan adalah urutan watak. Contohnya, "hello" adalah rentetan yang mengandungi urutan watak 'h', 'e', ​​'l', 'l', dan 'o'.

Kami menggunakan tanda petik ganda untuk mewakili rentetan di Java. Sebagai contoh,

 // create a string String type = "Java programming";

Di sini, kami telah membuat pemboleh ubah rentetan bernama jenis. Pemboleh ubah dimulakan dengan rentetan Java Programming.

Nota : Strings di Jawa tidak jenis primitif (suka int, chardan sebagainya). Sebaliknya, semua rentetan adalah objek dari kelas yang telah ditentukan String.

Dan, semua pemboleh ubah rentetan adalah contoh Stringkelas.

Contoh: Buat Rentetan 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 rentetan bernama pertama, kedua dan ketiga. Di sini, kami secara langsung membuat rentetan seperti jenis primitif.

Namun, ada cara lain untuk membuat rentetan Java (menggunakan newkata kunci). Kami akan mengetahui mengenai perkara itu kemudian dalam tutorial ini.

Operasi Rentetan Java

Java String menyediakan pelbagai kaedah untuk melakukan operasi yang berbeza pada rentetan. Kami akan meneliti beberapa operasi rentetan yang biasa digunakan.

1. Dapatkan Panjang Rentetan

Untuk mencari panjang tali, kami menggunakan length()kaedah Rentetan. 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); ) )

Pengeluaran

Rentetan: Helo! Panjang Dunia: 12

Dalam contoh di atas, length()kaedah mengira jumlah watak dalam rentetan dan mengembalikannya. Untuk mengetahui lebih lanjut, lawati Java String length ().

2. Bergabung dengan dua tali

Kita dapat menggabungkan dua tali di Java menggunakan concat()kaedah. 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); ) )

Pengeluaran

 Rentetan Pertama: Rentetan Kedua Java: Pengaturcaraan Rentetan Bergabung: Pengaturcaraan Java

Dalam contoh di atas, kami telah membuat dua rentetan bernama pertama dan kedua. Perhatikan kenyataannya,

 String joinedString = first.concat(second);

Di sini, kami concat()kaedah bergabung pertama dan kedua dan memberikannya kepada pemboleh ubah joinString.

Kami juga dapat bergabung dengan dua tali menggunakan +operator di Java. Untuk mengetahui lebih lanjut, kunjungi Java String concat ().

3. Bandingkan dua Rentetan

Di Jawa, kita dapat membuat perbandingan antara dua rentetan menggunakan equals()metode. 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); ) )

Pengeluaran

 String pertama dan kedua sama: String betul pertama dan ketiga sama: false

Dalam contoh di atas, kami telah membuat 3 rentetan bernama pertama, kedua dan ketiga. Di sini, kami menggunakan equal()kaedah untuk memeriksa sama ada satu rentetan sama dengan tali yang lain.

The equals()kaedah pemeriksaan kandungan tali sambil membandingkan mereka. Untuk mengetahui lebih lanjut, lawati Java String sama dengan ().

Catatan : Kami juga dapat membandingkan dua tali menggunakan ==operator di Java. Walau bagaimanapun, pendekatan ini berbeza daripada equals()kaedah. Untuk mengetahui lebih lanjut, lawati Java String == vs sama ().

Kaedah Rentetan Java

Selain yang disebutkan di atas, ada berbagai metode string yang ada di Java. Berikut adalah beberapa kaedah tersebut:

Kaedah Penerangan
substring () mengembalikan substring rentetan
ganti () menggantikan watak lama yang ditentukan dengan watak baru yang ditentukan
charAt () mengembalikan watak yang ada di lokasi yang ditentukan
getBytes () menukar rentetan kepada sebilangan bait
Indeks() mengembalikan kedudukan watak yang ditentukan dalam rentetan
bandingkanTo () membandingkan dua rentetan dalam susunan kamus
trim () mengalih keluar ruang kosong yang terkemuka dan belakang
format () mengembalikan rentetan yang diformat
berpecah () memecahkan rentetan menjadi sebilangan rentetan
keLowerCase () menukar rentetan menjadi huruf kecil
keUpperCase () menukar rentetan menjadi huruf besar
nilai() mengembalikan perwakilan rentetan dari argumen yang ditentukan
keCharArray () menukar rentetan kepada chartatasusunan

Melarikan watak dalam Java Strings

Watak melarikan diri digunakan untuk melarikan diri dari beberapa watak yang ada di dalam tali.

Katakan kita perlu memasukkan tanda petik ganda di dalam rentetan.

 // include double quote String example = "This is the "String" class";

Since strings are represented by double quotes, the compiler will treat "This is the " as the string. Hence, the above code will cause an error.

To solve this issue, we use the escape character in Java. For example,

 // use the escape character String example = "This is the "String " class.";

Now escape characters tell the compiler to escape double quotes and read the whole text.

Java Strings are Immutable

In Java, strings are immutable. This means, once we create a string, we cannot change that string.

To understand it more deeply, consider an example:

 // create a string String example = "Hello! ";

Here, we have created a string variable named example. The variable holds the string "Hello! ".

Now suppose we want to change the string.

 // add another string "World" // to the previous tring example example = example.concat(" World");

Here, we are using the concat() method to add another string World to the previous string.

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,

  1. JVM takes the first string "Hello! "
  2. creates a new string by adding "World" to the first string
  3. assign the new string "Hello! World" to the example variable
  4. 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.

  • Sekiranya rentetan sudah ada , rentetan baru tidak dibuat. Sebaliknya, rujukan baru menunjukkan rentetan yang ada.
  • Sekiranya rentetan tidak ada , rentetan baru akan dibuat.

Walau bagaimanapun, semasa membuat rentetan menggunakan kata kunci baru , nilai rentetan tidak diberikan secara langsung. Oleh itu rentetan baru dibuat sepanjang masa.

Artikel menarik...