0Pricing
Java Academy · Pelajaran

Membaca Baris

readLine dan perulangan

Membaca Baris adalah pelajaran Java Academy gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Java Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Java Academy mencakup 4 pelajaran total.

Metode readLine

readLine() adalah inti dari BufferedReader. Metode ini membaca karakter hingga menemukan pemisah baris (Enter), lalu mengembalikan baris tersebut sebagai String.

Teks yang dikembalikan tidak menyertakan karakter baris baru. Dalam pelajaran ini, kita membaca satu baris dan beberapa baris.

String line = br.readLine();

Membaca Satu Baris

Berikut kasus yang paling sederhana: membaca nama lalu mencetak sapaan. readLine() menunggu hingga pengguna menekan Enter.

Karena membaca dari System.in, cuplikan ini berhenti sejenak untuk menunggu masukan dari papan ketik, sehingga tidak dapat dijalankan otomatis di sini.

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br =
            new BufferedReader(new InputStreamReader(System.in));
        String name = br.readLine();
        System.out.println("Welcome, " + name + "!");
    }
}

Nilai yang Dikembalikan readLine di Akhir

Jika tidak ada masukan lagi (akhir aliran, atau pengguna menandai EOF), readLine() mengembalikan null, bukan String.

Ini adalah tanda yang sangat penting: memeriksa null adalah cara kita mengetahui bahwa kita harus berhenti membaca.

String line = br.readLine();
if (line == null) {
    System.out.println("No more input.");
}

Membaca hingga EOF

Untuk membaca setiap baris hingga masukan berakhir, lakukan pengulangan selama readLine() bukan null. Pola umum ini menetapkan nilai dan memeriksanya dalam satu kondisi.

Setiap pengulangan memberikan baris berikutnya, hingga null menghentikan pengulangan dengan rapi.

String line;
while ((line = br.readLine()) != null) {
    System.out.println("Got: " + line);
}

Pembaca Beberapa Baris

Berikut adalah program lengkap yang menampilkan kembali setiap baris yang Anda ketik hingga aliran berakhir.

Program ini membaca dari System.in, sehingga menunggu masukan dan tidak dapat dijalankan otomatis, tetapi pola pengulangannya persis seperti yang akan Anda gunakan kembali.

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br =
            new BufferedReader(new InputStreamReader(System.in));
        String line;
        while ((line = br.readLine()) != null) {
            System.out.println("Echo: " + line);
        }
    }
}

Menghitung Baris

Anda dapat melakukan pekerjaan di dalam pengulangan, misalnya menghitung. Di sini kita menghitung jumlah baris yang masuk.

Setiap iterasi membaca baris baru dan menaikkan penghitung. Saat masukan berakhir, kita mencetak jumlah totalnya.

int count = 0;
String line;
while ((line = br.readLine()) != null) {
    count++;
}
System.out.println("Lines read: " + count);

Baris Kosong vs Nilai null

Berhati-hatilah: baris kosong (pengguna hanya menekan Enter) mengembalikan "", yaitu String kosong — bukan null.

Jadi, "".equals(line) berarti baris kosong, sedangkan line == null berarti masukan benar-benar telah selesai. Keduanya berbeda.

if (line == null) {
    // input finished
} else if (line.isEmpty()) {
    // user pressed Enter on a blank line
}

Mensimulasikan Baris Tanpa Masukan Standar

Untuk melihat cara kerja readLine() tanpa masukan dari papan ketik, kita dapat memberikan masukan kepada BufferedReader dari StringReader. Program ini dapat dijalankan sepenuhnya.

String tersebut berisi dua baris yang dipisahkan oleh \n, dan pengulangan mencetak masing-masing baris.

import java.io.BufferedReader;
import java.io.StringReader;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br =
            new BufferedReader(new StringReader("apple\nbanana"));
        String line;
        while ((line = br.readLine()) != null) {
            System.out.println("Fruit: " + line);
        }
    }
}

Memangkas Spasi Kosong

Masukan sering kali memiliki spasi yang tidak diperlukan. Gunakan trim() untuk menghapus spasi kosong di awal dan akhir suatu baris sebelum menggunakannya.

Dengan begitu, perbandingan dan penguraian tetap dapat diandalkan, terutama ketika pengguna tidak sengaja menambahkan spasi.

import java.io.BufferedReader;
import java.io.StringReader;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br =
            new BufferedReader(new StringReader("  hello  \n"));
        String line = br.readLine().trim();
        System.out.println("[" + line + "]");
    }
}

Membaca Jumlah Baris yang Tetap

Terkadang Anda sudah mengetahui jumlahnya sejak awal. Pengulangan for membaca tepat sebanyak jumlah baris tersebut.

Hal ini umum ketika soal menyatakan “angka pertama memberi tahu berapa banyak baris yang mengikutinya.”

for (int i = 0; i < 3; i++) {
    String item = br.readLine();
    System.out.println(i + ": " + item);
}

Kebiasaan Utama dalam Menggunakan readLine

Ingatlah kebiasaan berikut:

  • Selalu periksa null sebelum menggunakan suatu baris.
  • Gunakan trim() jika spasi yang tidak diperlukan dapat menyebabkan kesalahan.
  • String kosong tidak sama dengan null.

Selanjutnya, kita akan mengubah baris-baris ini menjadi angka.

Uji Cepat

Apa yang dikembalikan readLine() ketika aliran masukan telah mencapai akhirnya?

Ringkasan

Anda telah mempelajari cara membaca satu baris, melakukan pengulangan dengan while ((line = br.readLine()) != null), serta membedakan baris kosong ("") dari akhir masukan (null).

Anda juga telah melihat contoh yang dapat dijalankan menggunakan StringReader. Berikutnya: mengubah baris teks menjadi angka.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Membaca Baris” gratis?

Ya — teks lengkap “Membaca Baris” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Java Academy, upgrade ke CoddyKit PRO. Kursus Java Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Membaca Baris”?

readLine dan perulangan Kamu berlatih Java Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Java Academy?

Tidak diperlukan pengalaman sebelumnya. Java Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.

Berapa lama pelajaran “Membaca Baris” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Java Academy ini?

Ya. Setiap pelajaran Java Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mengapa BufferedReader
  2. Membaca Baris
  3. Mengurai Angka dari Masukan
  4. Menutup Aliran dengan Aman
← Kembali ke Java Academy