java - 如果字符串以负号开头,setText 将无法正常工作

标签 java string swing calculator jtextfield

所以,我正在制作一个计算器。我试图在 JTextField 中显示方程,但如果方程以负号开头,则无法正确打印。

textfield.setText("-3+3");

给出输出 = 3+3-

但在 时的方程相同

System.out.println("-3+3");

以正确的顺序给出输出

很抱歉,如果这是一些菜鸟错误。

编辑:

package practice;

import java.awt.*;
import javax.swing.*;

import java.awt.event.*;

public class fun extends JFrame implements ActionListener , FocusListener{


public static void main(String[] args){

    new fun();
}

JTextField display2 = new JTextField(20);

JTextField display = new JTextField(20);

JButton btnSol = new JButton("=");

public fun(){

    JFrame fr = new JFrame();

    fr.setSize(450,450);

    fr.setLocationRelativeTo(null);

    fr.setResizable(false);

    fr.setTitle("Calculator");

    JPanel pnl = new JPanel();


    display.setEditable(false);
    display2.setEditable(false)

    pnl.add(display);

    pnl.add(display2);

    pnl.add(btnSol);

    btnSol.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            String x = display2.getText();
            System.out.println(x);
            display.setText(x);
            int sum = 0;
            String[] arrOfStr = x.split("\\+");                   
            for (String a : arrOfStr) {
                System.out.println(a);

            sum += Integer.parseInt(a);
            display2.setText(Integer.toString(sum));
            }

        }
    });

    fr.add(pnl);
    fr.setVisible(true);


}

最佳答案

发生这种情况是因为您已经设置了

textField.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);

非常简单。这通常用于阿拉伯文本(?),我认为它是倒置的。

关于java - 如果字符串以负号开头,setText 将无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54772404/

相关文章:

string - Go 语言 : A way to tokenize a string

Java 桌面应用程序(awt/swing GUI)到 Web 应用程序

java - 将自定义方法添加到 JButton 类

java - 为什么我的 showMessageDialog 显示两次?

java - 我在 java 程序中遇到 NullPointerException

java - 如何制作不需要安装Java的Java Mac App

java - java.lang.String 是否有内存高效的替代品?

java - 如何在Java中用空字符串替换á字符?

java - 日期间隔的 JPA 标准 API 查询

java - 将 jsonobject 附加到现有 jsonobject