JavaRush /Java Blog /Random-ID /Aliran dan String I/O di Java
articles
Level 15

Aliran dan String I/O di Java

Dipublikasikan di grup Random-ID
Sebuah kelas dari perpustakaan paket Java digunakan untuk memasukkan data Scanner. Aliran dan String I/O di Java - 1Kelas ini harus diimpor ke dalam program yang akan menggunakannya. Hal ini dilakukan sebelum kelas publik dimulai pada kode program. Kelas memiliki metode untuk membaca karakter berikutnya dari tipe tertentu dari aliran input standar, serta untuk memeriksa keberadaan karakter tersebut. Untuk bekerja dengan aliran masukan, Anda perlu membuat objek kelas Pemindai , yang menentukan selama pembuatan aliran masukan mana yang akan dikaitkan dengannya. Aliran input standar (keyboard) di Java diwakili oleh sebuah objek - System.in. Dan aliran keluaran standar (tampilan) adalah objek yang sudah Anda kenal System.out. Ada juga aliran standar untuk keluaran kesalahan - System.err, tetapi bekerja dengannya berada di luar cakupan kursus kami.
import java.util.Scanner; // импортируем класс
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in); // создаём an object класса Scanner
        int i = 2;
        System.out.print("Введите целое число: ");
        if(sc.hasNextInt()) { // возвращает истину если с потока ввода можно считать целое число
          i = sc.nextInt(); // считывает целое число с потока ввода и сохраняем в переменную
          System.out.println(i*2);
        } else {
          System.out.println("Вы ввели не целое число");
        }
    }
}
Metode hasNextDouble()yang diterapkan pada objek kelas Scannermemeriksa apakah tipe bilangan real dapat dibaca dari aliran input double, dan metode nextDouble()membacanya. Jika Anda mencoba membaca suatu nilai tanpa terlebih dahulu memeriksanya, Anda mungkin mendapatkan kesalahan selama eksekusi program (debugger tidak akan mendeteksi kesalahan tersebut sebelumnya). Misalnya, coba masukkan bilangan real pada program di bawah ini:
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        double  i = sc.nextDouble(); // если ввести букву s, то случится ошибка во время исполнения
        System.out.println(i/3);
    }
}
Ada juga metode nextLine()yang memungkinkan Anda membaca seluruh rangkaian karakter, mis. string yang artinya nilai yang diperoleh melalui metode ini harus disimpan dalam objek kelas String. Dalam contoh berikut, dua objek tersebut dibuat, kemudian input pengguna ditulis ke objek tersebut satu per satu, dan kemudian satu string ditampilkan di layar, diperoleh dengan menggabungkan urutan karakter yang dimasukkan.
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s1, s2;
        s1 = sc.nextLine();
        s2 = sc.nextLine();
        System.out.println(s1 + s2);
    }
}
Ada juga metode hasNext()yang memeriksa apakah masih ada karakter tersisa di aliran input. Kelas ini Stringmemiliki banyak metode berguna yang dapat diterapkan pada string (sebelum nama metode kami akan menunjukkan jenis nilai yang dikembalikan):
  1. int length()— mengembalikan panjang string (jumlah karakter di dalamnya);
  2. boolean isEmpty()— memeriksa apakah stringnya kosong;
  3. String replace(a, b)— mengembalikan string yang karakter a (literal atau variabel bertipe char) digantikan oleh karakter b;
  4. String toLowerCase()— mengembalikan string yang semua karakter dalam string asli diubah menjadi huruf kecil;
  5. String toUpperCase()— mengembalikan string yang semua karakter dalam string asli diubah menjadi huruf besar;
  6. boolean equals(s)— mengembalikan nilai true jika string yang digunakan metode ini cocok dengan string yang ditentukan dalam argumen metode (Anda tidak dapat membandingkan menggunakan ==operator string, seperti objek lainnya);
  7. int indexOf(ch)— mengembalikan indeks karakter ch dalam sebuah string (indeks adalah nomor urut karakter, tetapi karakter diberi nomor mulai dari nol). Jika karakter tidak ditemukan sama sekali, maka akan mengembalikan -1. Jika sebuah karakter muncul lebih dari satu kali dalam sebuah string, ia akan mengembalikan indeks kemunculan pertamanya.
  8. int lastIndexOf(ch)- mirip dengan metode sebelumnya, tetapi mengembalikan indeks kemunculan terakhir jika simbol muncul beberapa kali dalam satu baris.
  9. int indexOf(ch,n)— mengembalikan indeks karakter ch dalam string, tetapi mulai memeriksa dari indeks n (indeks adalah nomor urut karakter, tetapi karakter diberi nomor mulai dari nol).
  10. char charAt(n)— mengembalikan kode karakter yang terletak pada baris di bawah indeks n (indeks adalah nomor seri karakter, tetapi karakter diberi nomor mulai dari nol).
public class Main {
    public static void main(String[] args) {
        String s1 = "firefox";
        System.out.println(s1.toUpperCase()); // выведет «FIREFOX»
        String s2 = s1.replace('o', 'a');
        System.out.println(s2); // выведет «firefax»
        System.out.println(s2.charAt(1)); // выведет «i»
        int i;
        i = s1.length();
        System.out.println(i); // выведет 7
        i = s1.indexOf('f');
        System.out.println(i); // выведет 0
        i = s1.indexOf('r');
        System.out.println(i); // выведет 2
        i = s1.lastIndexOf('f');
        System.out.println(i); // выведет 4
        i = s1.indexOf('t');
        System.out.println(i); // выведет -1
        i = s1.indexOf('r',3);
        System.out.println(i); // выведет -1
    }
}
Contoh program yang akan menampilkan indeks semua spasi pada baris yang dimasukkan oleh pengguna dari keyboard:
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        for(int i=0; i < s.length(); i++) {
            if(s.charAt(i) == ' ') {
                System.out.println(i);
            }
        }
    }
}
Tautan ke sumber: aliran dan string I/O di Java
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION