Rumah > Java > teks badan

Ralat: simbol tidak ditemui dalam kod input pengguna

PHPz
Lepaskan: 2024-02-22 12:28:18
ke hadapan
461 orang telah melayarinya

PHP Editor Xinyi menjawab soalan biasa dalam pengaturcaraan Java: "Ralat: Simbol tidak ditemui dalam kod input pengguna". Ralat ini biasanya bermaksud bahawa pengkompil tidak mengenali pembolehubah atau kaedah yang digunakan dalam kod, mungkin disebabkan oleh ralat ejaan, isu skop atau tidak mengimport pakej yang berkaitan. Apabila anda menghadapi situasi ini semasa pengaturcaraan, anda perlu menyemak kod dengan teliti untuk memastikan semua nama pembolehubah dan kaedah adalah betul. Selain itu, pastikan anda mengimport pakej dan perpustakaan yang diperlukan untuk mengelakkan ralat ini.

Kandungan soalan

Saya sangat baru dalam bahasa pengaturcaraan dan saya cuba belajar bahasa java.

Saya berurusan dengan input pengguna, syarat dan pelbagai syarat.

Apabila saya cuba menulis kod saya sendiri, saya mendapat ralat, ini ialah kodnya:

import java.util.scanner;

public class main
{
    public static void main (string[] args) {
        scanner input = new scanner(system.in);
        
        system.out.println("masukkan suhu:");
        int temp = input.nextint();
        system.out.println("masukkan hal yang direbus:");
        **string rebusan = input.nextln();**
        
        if ((temp == 100) && (rebusan == "air" || rebusan == "air")) {
            system.out.println("mendidih, segera angkat!");
        } else if ((temp >= 60 && temp <= 100) && (rebusan == "air" || rebusan == "air")) {
            system.out.println("sedikit lagi");
        } else if ((temp >= 25 && temp <= 60) && (rebusan == "air" || rebusan == "air")) {
            system.out.println("masih lama, sabar");
        } else if ((temp >= 1 && temp <= 25) && (rebusan == "air" || rebusan == "air")) {
            system.out.println("baru dinyalain...");
        } else if ((temp >= -300 && temp <= 1) && (rebusan == "air" || rebusan == "air")) {
            system.out.println("beku!");
        } else {
            system.out.println("hmm...");
        }    }
}
Salin selepas log masuk

Mesej ralat:

main.java:11: error: cannot find symbol
        string rebusan = input.nextln();
                              ^
  symbol:   method nextln()
  location: variable input of type scanner
Salin selepas log masuk

Saya tidak faham apa yang perlu saya lakukan, masalah apa yang perlu saya selesaikan. Adakah ia simbol titik selepas "input"? Apabila saya mengeluarkannya, ia juga tidak berfungsi.

Maaf atas bahasa Inggeris saya yang teruk.

Tetapi apabila saya mengalih keluar "ln" dalam "input.nexln();". ianya berfungsi. Saya tidak faham langsung. Ini kodnya:

import java.util.Scanner;

public class Main
{
    public static void main (String[] args) {
        Scanner input = new Scanner(System.in);
        
        System.out.println("Masukkan Suhu:");
        int temp = input.nextInt();
        System.out.println("Masukkan Hal yang direbus:");
        **String rebusan = input.next();**
        
        if ((temp == 100) && (rebusan == "air" || rebusan == "Air")) {
            System.out.println("Mendidih, segera angkat!");
        } else if ((temp >= 60 && temp <= 100) && (rebusan == "air" || rebusan == "Air")) {
            System.out.println("Sedikit lagi");
        } else if ((temp >= 25 && temp <= 60) && (rebusan == "air" || rebusan == "Air")) {
            System.out.println("Masih lama, sabar");
        } else if ((temp >= 1 && temp <= 25) && (rebusan == "air" || rebusan == "Air")) {
            System.out.println("Baru dinyalain...");
        } else if ((temp >= -300 && temp <= 1) && (rebusan == "air" || rebusan == "Air")) {
            System.out.println("Beku!");
        } else {
            System.out.println("Hmm...");
        }
    }
}
Salin selepas log masuk

Penyelesaian

Anda mendapat ralat ini kerana kelas pengimbas tidak dinamakan nextln() 的方法,应该用于读取输入的方法是 nextline(). Kod yang betul ialah:

Scanner input = new Scanner(System.in);

    System.out.println("Masukkan Suhu:");
    int temp = input.nextInt();
    System.out.println("Masukkan Hal yang direbus:");
    String rebusan = input.nextLine();

    if ((temp == 100) && (rebusan == "air" || rebusan == "Air")) {
        System.out.println("Mendidih, segera angkat!");
    } else if ((temp >= 60 && temp <= 100) && (rebusan == "air" || rebusan == "Air")) {
        System.out.println("Sedikit lagi");
    } else if ((temp >= 25 && temp <= 60) && (rebusan == "air" || rebusan == "Air")) {
        System.out.println("Masih lama, sabar");
    } else if ((temp >= 1 && temp <= 25) && (rebusan == "air" || rebusan == "Air")) {
        System.out.println("Baru dinyalain...");
    } else if ((temp >= -300 && temp <= 1) && (rebusan == "air" || rebusan == "Air")) {
        System.out.println("Beku!");
    } else {
        System.out.println("Hmm...");
    }    }
Salin selepas log masuk

Atas ialah kandungan terperinci Ralat: simbol tidak ditemui dalam kod input pengguna. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:stackoverflow.com
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!