ถึงจุดสิ้นสุดของไฟล์ขณะแยกวิเคราะห์ข้อผิดพลาดในการคอมไพล์

ฉันเป็นผู้เริ่มต้นเขียนโปรแกรม Java ฉันทำอย่างไรจึงจะได้รับข้อผิดพลาด: ถึงจุดสิ้นสุดไฟล์ขณะแยกวิเคราะห์

import java.util.Scanner;
class eng{
  public static void main(String[] args){
    Scanner input = new Scanner(System.in);
    String value; 
    String direct = "answer true or false to the following statement.";
    String ques = "Twelve is greater than seven";
    System.out.println(direct);
    System.out.println(ques);    
    value = input.nextLine();
    if ((value = "true")) {
      System.out.println("you are correct");
    } else {
       System.out.println("you are wrong my friend");              
    }
}

person zeze-231    schedule 21.10.2015    source แหล่งที่มา


คำตอบ (3)


  1. เพิ่มอีก "}" ที่ท้ายรหัสของคุณที่คุณพลาดไป

2. มีข้อผิดพลาดอื่นในรหัสของคุณ

if((value = "true"))

ไม่ใช่วิธีที่เหมาะสมในการตรวจสอบความเท่าเทียมกันของสตริงและมีข้อผิดพลาดทางไวยากรณ์ที่ควรจะเป็น

if(value.equals("true"))
person rumman0786    schedule 21.10.2015

คุณขาดเครื่องหมายปีกกาปิด } จากสิ่งที่คอมไพเลอร์เห็นคุณไม่เคยปิดวงเล็บปีกกาหลังจาก class eng{

person Michael Albers    schedule 21.10.2015
comment
ฉันควรวางไว้ที่ไหน? - person zeze-231; 21.10.2015
comment
@ zeze-231 วงเล็บปีกกาเปิดแต่ละตัวจะกำหนดขอบเขตใหม่ (โดยทั่วไป) ดังนั้นคุณจะปิดมันเมื่อคุณต้องการให้ขอบเขตนั้นสิ้นสุด ในกรณีนี้ เนื่องจากคุณกำลังทำงานกับไฟล์ Java คลาสจึงจะมีขอบเขตการปิดล้อมที่ใหญ่ที่สุด (เมื่อคุณทำงานกับ Java มากขึ้น คุณจะเห็นว่าคำสั่งนั้นไม่จำเป็นต้องเป็นจริง แต่สำหรับวัตถุประสงค์ของคุณ มันเป็นอย่างนั้น) . ดังนั้น } ที่คุณต้องการจะอยู่หลังอักขระอื่นๆ ทั้งหมดในไฟล์ นั่นคือในตอนท้าย - person Michael Albers; 21.10.2015

โปรดเยื้องใหม่/จัดรูปแบบโค้ดของคุณใหม่ก่อน บางทีคุณอาจพบวงเล็บปีกกาปลาย "}" ที่หายไป

person Mr.yu    schedule 21.10.2015