Rumah >Java >javaTutorial >Mengapa System.console() Mengembalikan Null, dan Apakah Alternatif untuk Input Java?

Mengapa System.console() Mengembalikan Null, dan Apakah Alternatif untuk Input Java?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-18 11:02:19627semak imbas

Why Does System.console() Return Null, and What Are the Alternatives for Java Input?

Input Java daripada System.console()

Apabila menggunakan kelas Console, anda mungkin menghadapi objek nol apabila memanggil System.console( ). Sebelum meneruskan, adalah penting untuk menentukan sama ada sebarang pelarasan diperlukan.

System.console() dalam Persekitaran Berbeza

Menggunakan System.console() untuk mendapatkan input mempunyai ciri khusus had:

  • IDE Persekitaran:

    • System.console() mengembalikan null dalam IDE seperti Eclipse atau IntelliJ kerana mereka menyediakan mekanisme mereka sendiri untuk input pengguna.
  • Barisan Perintah Persekitaran:

    • System.console() berfungsi seperti yang diharapkan apabila dilaksanakan terus daripada baris arahan.

Penyelesaian Alternatif

Jika System.console() bukan pilihan, pertimbangkan perkara berikut alternatif:

  • Input Tertimbal (Bukan IDE):
System.out.print("Enter something:");
String input = System.console().readLine();
  • BufferedReader (IDE dan Baris Perintah) :
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Test {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Enter String");
        String s = br.readLine();
    }
}

Atas ialah kandungan terperinci Mengapa System.console() Mengembalikan Null, dan Apakah Alternatif untuk Input Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn