在java中,如何停止从另一个方法调用一个方法?

在java中,如何停止从另一个方法调用一个方法?,java,methods,calculator,Java,Methods,Calculator,我有一个计算器代码,问题是: public void valueCheck(String value,JToggleButton button) { if(values.size()>2) { processValue(value); button.setSelected(false); JOptionPane.showMessageDialog(this, "You cant cl

我有一个计算器代码,问题是:

 public void valueCheck(String value,JToggleButton button) {
        if(values.size()>2) 
        {
            processValue(value);
            button.setSelected(false);
            JOptionPane.showMessageDialog(this, "You cant click 3 buttons at the same time..");
        }
    }
有一种方法valueCheck和:

public boolean evenOdd(JToggleButton buton)
    {
        if(values.size()==2)
        {
        System.out.println((String)values.get(0));
        System.out.println((String)values.get(1));

        String number1 = new String(values.get(0));
        String number2 = new String(values.get(1));

        if(evenNumbers.contains(number1))
        {
            if(evenNumbers.contains(number2))
            {
                processValue(number1);
                processValue(number2);
            }
            else if(oddNumbers.contains(number2))
            {
                buton.setSelected(false);
                JOptionPane.showMessageDialog(this, "You cant click an even and an odd number at the same time..");

            }
        }
        else if(oddNumbers.contains(number1))
        {
            if(oddNumbers.contains(number2))
            {
                processValue(number1);
                processValue(number2);
            }
            else if(evenNumbers.contains(number2))
            {
                buton.setSelected(false);
                JOptionPane.showMessageDialog(this, "You cant click an even and an odd number at the same time..");
            }
        }
        }
        return false;
    }
有一种方法很奇怪


我的问题是:我不想让valueCheck方法为evenOdd方法运行。当evenOdd方法运行时,必须停止调用valueCheck。是否存在执行此操作的事件?我想在evenOdd运行时停止调用valueCheck

这是我的全部代码

package tr.com.bites;
import com.sun.org.apache.xml.internal.utils.StopParseException;
import java.util.List;
import java.util.ArrayList;
import javax.swing.JOptionPane;
import javax.swing.JToggleButton;
public class CalculatorView_1 extends javax.swing.JFrame {
     JToggleButton[] buttons =  new JToggleButton[4];
    public CalculatorView_1() {
        initComponents();
        buttons[0]=jToggleButton12;
        buttons[1]=jToggleButton11;
        buttons[2]=jToggleButton10;
        buttons[3]=jToggleButton13;
    }
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jToggleButton1 = new javax.swing.JToggleButton();
        jToggleButton2 = new javax.swing.JToggleButton();
        jToggleButton3 = new javax.swing.JToggleButton();
        jToggleButton4 = new javax.swing.JToggleButton();
        jToggleButton5 = new javax.swing.JToggleButton();
        jToggleButton6 = new javax.swing.JToggleButton();
        jToggleButton7 = new javax.swing.JToggleButton();
        jToggleButton8 = new javax.swing.JToggleButton();
        jToggleButton9 = new javax.swing.JToggleButton();
        jToggleButton10 = new javax.swing.JToggleButton();
        jToggleButton11 = new javax.swing.JToggleButton();
        jToggleButton12 = new javax.swing.JToggleButton();
        jToggleButton13 = new javax.swing.JToggleButton();
        jToggleButton14 = new javax.swing.JToggleButton();
        jTextField1 = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jToggleButton1.setText("1");
        jToggleButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton1ActionPerformed(evt);
            }
        });

        jToggleButton2.setText("2");
        jToggleButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton2ActionPerformed(evt);
            }
        });

        jToggleButton3.setText("3");
        jToggleButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton3ActionPerformed(evt);
            }
        });

        jToggleButton4.setText("5");
        jToggleButton4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton4ActionPerformed(evt);
            }
        });

        jToggleButton5.setText("4");
        jToggleButton5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton5ActionPerformed(evt);
            }
        });

        jToggleButton6.setText("6");
        jToggleButton6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton6ActionPerformed(evt);
            }
        });

        jToggleButton7.setText("8");
        jToggleButton7.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton7ActionPerformed(evt);
            }
        });

        jToggleButton8.setText("7");
        jToggleButton8.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton8ActionPerformed(evt);
            }
        });

        jToggleButton9.setText("9");
        jToggleButton9.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton9ActionPerformed(evt);
            }
        });

        jToggleButton10.setText("*");
        jToggleButton10.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton10ActionPerformed(evt);
            }
        });

        jToggleButton11.setText("-");
        jToggleButton11.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton11ActionPerformed(evt);
            }
        });

        jToggleButton12.setText("+");
        jToggleButton12.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton12ActionPerformed(evt);
            }
        });

        jToggleButton13.setText("/");
        jToggleButton13.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton13ActionPerformed(evt);
            }
        });

        jToggleButton14.setText("=");
        jToggleButton14.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jToggleButton14ActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(24, 24, 24)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jToggleButton8)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jToggleButton7)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jToggleButton9))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jToggleButton5)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jToggleButton4)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jToggleButton6))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jToggleButton1)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jToggleButton2)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jToggleButton3)))
                .addGap(34, 34, 34)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(jToggleButton12, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jToggleButton11, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jToggleButton10, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jToggleButton13, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jToggleButton14, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 84, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(78, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(36, 36, 36)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jToggleButton12)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jToggleButton11)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jToggleButton10))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jToggleButton1)
                            .addComponent(jToggleButton2)
                            .addComponent(jToggleButton3))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jToggleButton5)
                            .addComponent(jToggleButton4)
                            .addComponent(jToggleButton6))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jToggleButton8)
                            .addComponent(jToggleButton7)
                            .addComponent(jToggleButton9))))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jToggleButton13)
                .addGap(41, 41, 41)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jToggleButton14)
                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(90, Short.MAX_VALUE))
        );

        pack();
    }// </editor-fold>                        

    private void jToggleButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("1");
       valueCheck("1",jToggleButton1);
       evenOdd(jToggleButton1);
    }                                              

    private void jToggleButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("2");
       valueCheck("2",jToggleButton2);
       evenOdd(jToggleButton2);
    }                                              

    private void jToggleButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("3");
       valueCheck("3",jToggleButton3);
       evenOdd(jToggleButton3);
    }                                              

    private void jToggleButton5ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("4");
       valueCheck("4",jToggleButton5);
       evenOdd(jToggleButton5);
    }                                              

    private void jToggleButton4ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("5");
       valueCheck("5",jToggleButton4);
       evenOdd(jToggleButton4);
    }                                              

    private void jToggleButton6ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("6");
       valueCheck("6",jToggleButton6);
       evenOdd(jToggleButton6);
    }                                              

    private void jToggleButton8ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("7");
       valueCheck("7",jToggleButton8);
       evenOdd(jToggleButton8);
    }                                              

    private void jToggleButton7ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("8");
       valueCheck("8",jToggleButton7);
       evenOdd(jToggleButton7);
    }                                              

    private void jToggleButton9ActionPerformed(java.awt.event.ActionEvent evt) {                                               
       processValue("9");
       valueCheck("9",jToggleButton9);
       evenOdd(jToggleButton9);
    }                                              

    private void jToggleButton12ActionPerformed(java.awt.event.ActionEvent evt) {                                                
       processValue("+");
       for(JToggleButton b: buttons)
           b.setSelected(false);
        if(values.contains("+"))
            jToggleButton12.setSelected(true);
    }                                               

    private void jToggleButton11ActionPerformed(java.awt.event.ActionEvent evt) {                                                
       processValue("-");
       for(JToggleButton b: buttons)
           b.setSelected(false);
        if(values.contains("-"))
            jToggleButton11.setSelected(true);
    }                                               

    private void jToggleButton10ActionPerformed(java.awt.event.ActionEvent evt) {                                                
       processValue("*");
       for(JToggleButton b: buttons)
           b.setSelected(false);
        if(values.contains("*"))
            jToggleButton10.setSelected(true);
    }                                               

    private void jToggleButton13ActionPerformed(java.awt.event.ActionEvent evt) {                                                
       processValue("/");
       for(JToggleButton b: buttons)
           b.setSelected(false);
        if(values.contains("/"))
            jToggleButton13.setSelected(true);
    }                                               

    private void jToggleButton14ActionPerformed(java.awt.event.ActionEvent evt) {                                                
        long total=-1;
        int firstNumber=-1;
        int secondNumber=-1;
        String process=null;
        for (String secilenler : values) {
            if(secilenler.equals("+"))
                process="+";  
            else if(secilenler.equals("-"))
                process="-";
            else if(secilenler.equals("*"))
                process="*"; 
            else if(secilenler.equals("/"))
                process="/";    
            else
            {
                if(firstNumber==-1)
                   firstNumber= Integer.parseInt(secilenler);
                else
                    secondNumber= Integer.parseInt(secilenler);
            }
        }
           if(process.equals("+"))
                total=firstNumber+secondNumber;
            else if(process.equals("-"))
                total=firstNumber-secondNumber;
            else if(process.equals("*"))
                total=firstNumber*secondNumber;
            else 
                total=firstNumber/secondNumber;
           jTextField1.setText(""+total);
    }                                               

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]){
        java.awt.EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {
                new CalculatorView_1().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify                     
    private javax.swing.JTextField jTextField1;
    private javax.swing.JToggleButton jToggleButton1;
    private javax.swing.JToggleButton jToggleButton10;
    private javax.swing.JToggleButton jToggleButton11;
    private javax.swing.JToggleButton jToggleButton12;
    private javax.swing.JToggleButton jToggleButton13;
    private javax.swing.JToggleButton jToggleButton14;
    private javax.swing.JToggleButton jToggleButton2;
    private javax.swing.JToggleButton jToggleButton3;
    private javax.swing.JToggleButton jToggleButton4;
    private javax.swing.JToggleButton jToggleButton5;
    private javax.swing.JToggleButton jToggleButton6;
    private javax.swing.JToggleButton jToggleButton7;
    private javax.swing.JToggleButton jToggleButton8;
    private javax.swing.JToggleButton jToggleButton9;
    // End of variables declaration                   
    private List<String> values = new ArrayList<String>();
    private List<String> evenNumbers = new ArrayList<String>();
    {
        evenNumbers.add("2");
        evenNumbers.add("4");
        evenNumbers.add("6");
        evenNumbers.add("8");
    }
    private List<String> oddNumbers = new ArrayList<String>();
    {
        oddNumbers.add("1");
        oddNumbers.add("3");
        oddNumbers.add("5");
        oddNumbers.add("7");
        oddNumbers.add("9");
    }
    public void processValue(String strValue)
    {
        if(values.contains(strValue))
            values.remove(strValue);
        else
            values.add(strValue);
    }

    public void valueCheck(String value,JToggleButton button) {
        if(values.size()>2) 
        {
            processValue(value);
            button.setSelected(false);
            JOptionPane.showMessageDialog(this, "You cant click 3 buttons at the same time..");
        }
    }
    public boolean evenOdd(JToggleButton buton)
    {
        if(values.size()==2)
        {
        System.out.println((String)values.get(0));
        System.out.println((String)values.get(1));

        String number1 = new String(values.get(0));
        String number2 = new String(values.get(1));

        if(evenNumbers.contains(number1))
        {
            if(evenNumbers.contains(number2))
            {
                processValue(number1);
                processValue(number2);
            }
            else if(oddNumbers.contains(number2))
            {
                buton.setSelected(false);
                JOptionPane.showMessageDialog(this, "You cant click an even and an odd number at the same time..");

            }
        }
        else if(oddNumbers.contains(number1))
        {
            if(oddNumbers.contains(number2))
            {
                processValue(number1);
                processValue(number2);
            }
            else if(evenNumbers.contains(number2))
            {
                buton.setSelected(false);
                JOptionPane.showMessageDialog(this, "You cant click an even and an odd number at the same time..");
            }
        }
        }
        return false;
    }
}
package tr.com.bites;
导入com.sun.org.apache.xml.internal.utils.stopperSeeException;
导入java.util.List;
导入java.util.ArrayList;
导入javax.swing.JOptionPane;
导入javax.swing.JToggleButton;
公共类CalculatorView_1扩展了javax.swing.JFrame{
JToggleButton[]按钮=新的JToggleButton[4];
公共计算器视图_1(){
初始化组件();
按钮[0]=jToggleButton12;
按钮[1]=jToggleButton11;
按钮[2]=jToggleButton10;
按钮[3]=jToggleButton13;
}
@抑制警告(“未选中”)
//                           
私有组件(){
jToggleButton1=newjavax.swing.JToggleButton();
jToggleButton2=newjavax.swing.JToggleButton();
jToggleButton3=newjavax.swing.JToggleButton();
jToggleButton4=newjavax.swing.JToggleButton();
jToggleButton5=newjavax.swing.JToggleButton();
jToggleButton6=newjavax.swing.JToggleButton();
jToggleButton7=newjavax.swing.JToggleButton();
jToggleButton8=newjavax.swing.JToggleButton();
jToggleButton9=newjavax.swing.JToggleButton();
jToggleButton10=newjavax.swing.JToggleButton();
jToggleButton11=newjavax.swing.JToggleButton();
jToggleButton12=newjavax.swing.JToggleButton();
jToggleButton13=newjavax.swing.JToggleButton();
jToggleButton14=newjavax.swing.JToggleButton();
jTextField1=newjavax.swing.JTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jToggleButton1.setText(“1”);
jToggleButton1.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton1ActionExecuted(evt);
}
});
jToggleButton2.setText(“2”);
jToggleButton2.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton2ActionExecuted(evt);
}
});
jToggleButton3.setText(“3”);
jToggleButton3.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton3执行的操作(evt);
}
});
jToggleButton4.setText(“5”);
jToggleButton4.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton4ActionPerformed(evt);
}
});
jToggleButton5.setText(“4”);
jToggleButton5.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton5ActionPerformed(evt);
}
});
jToggleButton6.setText(“6”);
jToggleButton6.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton6执行的操作(evt);
}
});
jToggleButton7.setText(“8”);
jToggleButton7.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton7ActionPerformed(evt);
}
});
jToggleButton8.setText(“7”);
jToggleButton8.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton8ActionPerformed(evt);
}
});
jToggleButton9.setText(“9”);
jToggleButton9.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton9执行的操作(evt);
}
});
jToggleButton10.setText(“*”);
jToggleButton10.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton10ActionPerformed(evt);
}
});
jToggleButton11.setText(“-”);
jToggleButton11.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton11执行的操作(evt);
}
});
jToggleButton12.setText(“+”);
jToggleButton12.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton12ActionPerformed(evt);
}
});
jToggleButton13.setText(“/”);
jToggleButton13.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton13执行的操作(evt);
}
});
jToggleButton14.setText(“=”);
jToggleButton14.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jToggleButton14ActionExecuted(evt);
}
});
javax.swing.GroupLayout=newjavax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(布局);
layout.setHorizontalGroup(
createParallelGroup(javax。
if(evenOdd(jToggleButton1))
   valueCheck("1", jToggleButton1);