语法错误,插入“;”完成声明...我该如何解决? [关闭]

问题描述 投票:-3回答:1

我正在尝试用Java编写程序,但是遇到了一些问题。我的程序是GUI。程序必须从用户那里获得two输入,检查它们是否大于0,第二个大于第一个。但最后一部分我有一个问题。

下面是我的代码:

package yazdan;

import javax.swing.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.Random;

import java.util.concurrent.ThreadLocalRandom;

import java.util.concurrent.ThreadLocalRandom;

public class Y {

    public static void main(String[] args) {

        {

            JFrame frame = new JFrame("random number");

                frame.setBounds(0, 0, 1366,727);

                    frame.setVisible(true);

                        frame.setLayout(null);




                                JLabel a = new JLabel("first number          :");


                                a.setBounds(300, 250, 200, 70);

                                    frame.add(a);

                            JLabel b = new JLabel("second number   :");

                                b.setBounds(300, 350, 200, 70);

                                    frame.add(b);

                            JTextField c = new JTextField();

                                c.setEditable(true);

                                    c.setBounds(450, 250, 200, 70);

                                        frame.add(c);

                            JTextField z = new JTextField();

                                z.setEditable(true);

                                    z.setBounds(450, 350 , 200, 70);

                                        frame.add(z);

                            JButton y = new JButton("submit");

                                y.setBounds(300, 450, 350, 70);

                                    frame.add(y);



                            JLabel i = new JLabel("random number :");

                                i.setBounds(700, 350, 350, 70);


                                    frame.add(i);

                            JTextField h = new JTextField();

                                h.setBounds(900, 350, 350, 70);

                                    h.setEditable(false);

                                        frame.add(h);



                                        y.addActionListener(new ActionListener() {

                                            public void actionPerformed(ActionEvent e){

                                                y.addActionListener(this);

                                                String first = c.getText();

                                                String second = z.getText();

                                                int i1 = Integer.parseInt(first);

                                                if (i1 < 0) {


                                                    System.out.println("the numbers must be bigger than 0");    }

                                                int  i2 = Integer.parseInt(second);

                                                    if (i2 <0) {

                                                        System.out.println("the numbers must be bigger than 0");}

                                                    if (i1 > i2) {

                                                        System.out.println("the second number must be bigger than the first ");}

                                                    else  {

                                                        int n = ThreadLocalRandom.current().nextInt(i1, i2+1);

                                                        String result = String.valueOf(n);

                                                        h.setText(result);

                                                    }


                                            }
                                        } // here is the problem
        }
    }
}

这里的问题是""Syntax error, insert ";" to complete Statement""

请帮助

谢谢。

java actionlistener
1个回答
0
投票

在带有语法高亮显示的编辑器中打开该源代码,然后彩色标记将显示错误的位置:

y.addActionListener(new ActionListener() {
   ...
} // here is the problem

计算开括号和闭括号的数量。末尾缺少一个“)”。

© www.soinside.com 2019 - 2024. All rights reserved.