String Multi-baris Java

1. Ikhtisar

Karena fakta bahwa belum ada kelas string multi-baris asli di Java, agak sulit untuk membuat dan menggunakan string multi-baris.

Dalam tutorial ini, kami membahas beberapa metode untuk membuat dan menggunakan string multi-baris di Java .

2. Mendapatkan Line Separator

Setiap sistem operasi dapat memiliki caranya sendiri untuk menentukan dan mengenali baris baru. Di Java, sangat mudah untuk mendapatkan pemisah baris sistem operasi:

String newLine = System.getProperty("line.separator");

Kita akan menggunakan ini newLine di bagian berikut untuk membuat string multi-line.

3. Penggabungan String

Penggabungan string adalah metode asli yang mudah yang dapat digunakan untuk membuat string multi-baris:

public String stringConcatenation() { return "Get busy living" .concat(newLine) .concat("or") .concat(newLine) .concat("get busy dying.") .concat(newLine) .concat("--Stephen King"); }

Menggunakan operator + adalah cara lain untuk mencapai hal yang sama. Kompiler Java menerjemahkan concat () dan operator + dengan cara yang sama:

public String stringConcatenation() { return "Get busy living" + newLine + "or" + newLine + "get busy dying." + newLine + "--Stephen King"; }

4. Gabung String

Java 8 memperkenalkan String # join , yang menggunakan pemisah bersama dengan beberapa string sebagai argumen. Ini mengembalikan string terakhir yang memiliki semua string input yang digabungkan dengan pembatas:

public String stringJoin() { return String.join(newLine, "Get busy living", "or", "get busy dying.", "--Stephen King"); }

5. Pembangun String

StringBuilder adalah kelas pembantu untuk membangun String . StringBuilder diperkenalkan di Java 1.5 sebagai pengganti StringBuffer . Ini adalah pilihan yang bagus untuk membangun string besar dalam satu lingkaran:

public String stringBuilder() { return new StringBuilder() .append("Get busy living") .append(newLine) .append("or") .append(newLine) .append("get busy dying.") .append(newLine) .append("--Stephen King") .toString(); }

6. Penulis String

StringWriter adalah metode lain yang dapat kita gunakan untuk membuat string multi-baris. Kami tidak membutuhkan newLine di sini, karena kami menggunakan PrintWriter . Fungsi println secara otomatis menambahkan baris baru:

public String stringWriter() { StringWriter stringWriter = new StringWriter(); PrintWriter printWriter = new PrintWriter(stringWriter); printWriter.println("Get busy living"); printWriter.println("or"); printWriter.println("get busy dying."); printWriter.println("--Stephen King"); return stringWriter.toString(); }

7. Penggabung Jambu Biji

Menggunakan pustaka eksternal hanya untuk tugas sederhana seperti ini tidak masuk akal, namun, jika proyek sudah menggunakan pustaka untuk tujuan lain, kita dapat memanfaatkannya. Misalnya, pustaka Guava Google sangat populer. Guava memiliki kelas Joiner yang mampu membuat string multi-baris:

public String guavaJoiner() { return Joiner.on(newLine).join(ImmutableList.of("Get busy living", "or", "get busy dying.", "--Stephen King")); }

8. Memuat dari File

Java membaca file persis seperti aslinya. Artinya, jika kita memiliki string multi-baris dalam file teks, kita akan memiliki string yang sama saat membaca file. Ada banyak cara untuk membaca dari file di Java.

Sebenarnya, ini adalah praktik yang baik untuk memisahkan string panjang dari kode:

public String loadFromFile() throws IOException { return new String(Files.readAllBytes(Paths.get("src/main/resources/stephenking.txt"))); }

9. Menggunakan Fitur IDE

Banyak IDE modern mendukung salin / tempel multi-baris. Eclipse dan IntelliJ IDEA adalah contoh dari IDE semacam itu. Kami cukup menyalin string multi-baris kami dan menempel di dalam dua tanda kutip ganda di IDE ini.

Jelas, metode ini tidak berfungsi untuk pembuatan string dalam waktu proses, tetapi ini cara cepat dan mudah untuk mendapatkan string multi-baris.

10. Kesimpulan

Dalam tutorial ini, kami mempelajari beberapa metode untuk membuat string multi-baris di Java.

Kabar baiknya adalah Java 13 akan memiliki dukungan asli untuk string multi-baris melalui Blok Teks. Tak perlu dikatakan, semua metode di atas masih akan berfungsi di Java 13.

Kode untuk semua metode dalam artikel ini tersedia di Github.