Pengenalan StringBuffer
Termasuk bagian Logika & Alur dalam perjalanan Java di Coddy. Pelajaran 45 dari 59.
StringBuffer mirip dengan StringBuilder, tetapi aman digunakan oleh beberapa thread secara bersamaan. StringBuffer digunakan untuk membuat string yang dapat diubah.
Buat StringBuffer dengan teks awal:
StringBuffer sb = new StringBuffer("Hello");Tambahkan lebih banyak teks menggunakan append():
sb.append(" World");Setelah menjalankan kode di atas, sb berisi:
Hello World
Ubah teks menggunakan insert() dan replace():
StringBuffer sb = new StringBuffer("Java");
sb.insert(0, "Hi "); // menambahkan di awal
sb.replace(0, 2, "Hey"); // mengganti "Hi" dengan "Hey"Setelah menjalankan kode di atas, sb berisi:
Hey Java
Untuk menemukan posisi awal suatu teks, gunakan indexOf(). Fungsi ini mengembalikan posisi kecocokan pertama, atau -1 jika teks tersebut tidak ada:
StringBuffer sb = new StringBuffer("Hey Java");
int pos = sb.indexOf("Java"); // 4
int none = sb.indexOf("Python"); // -1Tantangan
MudahBuat method bernama modifyText yang menerima tiga argumen:
- String (
text) yang akan diubah - String (
target) yang akan dicari - String (
replacement) untuk menggantikan target
Method tersebut harus:
- Membuat StringBuffer dengan input
- Mengganti kemunculan pertama target dengan replacement
- Menambahkan tanda seru di akhir
- Mengembalikan string akhir
Pesan yang dikembalikan harus:
- Jika ada input yang bernilai null: kembalikan "Invalid input"
- Jika target tidak ditemukan: kembalikan teks asli dengan tanda seru
- Jika operasi berhasil: kembalikan teks yang telah diubah
Coba sendiri
import java.util.Scanner;
public class Main {
public static String modifyText(String text, String target, String replacement) {
// Tulis kodemu di sini
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String text = scanner.nextLine();
String target = scanner.nextLine();
String replacement = scanner.nextLine();
if (text.equals("null")) text = null;
if (target.equals("null")) target = null;
if (replacement.equals("null")) replacement = null;
System.out.println(modifyText(text, target, replacement));
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika & Alur
1Array Multidimensi
Dasar Array 2DMengakses Elemen Array 2DLoop Bersarang dengan Array 2DRangkuman: Array 2DPenjumlahan dan Pengurangan MatriksArray BergerigiArray 3D dan Lebih JauhPola Umum Array 2DRangkuman: Semua tentang Array2HashMap Bagian 1
Apa itu HashMap?Deklarasikan HashMapMengakses nilaiPeriksa apakah key adaMengubah dictionaryRingkasan: HashMap5HashSet Bagian 2
Matematika: Gabungan HashSetMatematika: Irisan HashSetMatematika: Selisih HimpunanMatematika: Beda SimetrisHimpunan Bagian dan SuperhimpunanMelakukan Iterasi pada set8Operasi String Lanjutan
Dasar StringBuilderPengenalan StringBufferDasar Ekspresi RegulerPencocokan Pola dengan RegexString TokenizerPemformatan String Lanjutan3HashMap Bagian 2
Method HashMapIterasi dengan keySet()Iterasi dengan entrySet()HashMap BersarangRangkuman: Kelola GudangRangkuman: Operasi HashMap6Alur Kontrol Lanjutan
Pernyataan LabelEkspresi SwitchPencocokan PolaKlausa PenjagaRingkasan Alur Kontrol9Proyek: Penghitung Kata Unik
Input dan Penyimpanan TeksPemrosesan KataLatihan sendiri: Compiler Java online