Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么可以';这个方法不能在actionListener中调用吗?_Java - Fatal编程技术网

Java 为什么可以';这个方法不能在actionListener中调用吗?

Java 为什么可以';这个方法不能在actionListener中调用吗?,java,Java,我对学习java中的方法还不熟悉。在python中,使用“函数”很容易,但我最近了解到java没有类似的功能。我有一个方法,它应该返回n1和n2中的最小值。我在行public static int minFunction中得到一个错误 Multiple markers at this line - Syntax error on token "(", ; expected - Syntax error on token ",", ; expected - Syntax error on

我对学习java中的方法还不熟悉。在python中,使用“函数”很容易,但我最近了解到java没有类似的功能。我有一个方法,它应该返回n1和n2中的最小值。我在行public static int minFunction中得到一个错误

Multiple markers at this line
- Syntax error on token "(", ; 
 expected
- Syntax error on token ",", ; 
 expected
- Syntax error on token ")", ; 
 expected
但语法似乎没有任何问题

JButton btnCompute = new JButton("Compute");
    btnCompute.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            try { 


                int n1=5;
                int n2=4;
                int minValue= minFunction(n1,n2);


                public static int minFunction(int n1 , int n2) {
                       int min;
                       if (n1 > n2)
                          min = n2;
                       else
                          min = n1;

                       return min; 
                    }                       
                }

            catch(NumberFormatException ex){ 

            }
        }
    });

若要从侦听器实现中调用方法,请将其放在侦听器实现之外。比如说,

JButton btnCompute = new JButton("Compute");
public void handleAction() {
    btnCompute.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            try {

                int n1 = 5;
                int n2 = 4;
                int minValue = minFunction(n1, n2);

            }

            catch (NumberFormatException ex) {

            }
        }
    });
}
public int minFunction(int n1, int n2) {
    int min;
    if (n1 > n2)
        min = n2;
    else min = n1;

    return min;
}

无法在方法中定义方法。可能存在重复的