有一个textfield的计算器

时间:2017-02-28 15:43:46

标签: java calculator

我想用单个文本字段制作计算器,你能帮忙吗?

例如,我将添加" 2 + 2 * 5"它会给出结果。

我想用Java制作它,我写了一段代码,但我不知道如何让它工作

public class Calculator {

public static void main(String[] args) {

    Scanner my_scanner = new Scanner(System.in);
    String input;
    String[] splitArray = null ;
    String[] stringArray = null ;
    String regex = "[0-9]+";
    String opr;
    int [] Cast = null;
    String number;
    int Answer;


    System.out.println("Enter your equation");

    input = my_scanner.nextLine();
    splitArray = input.split("\\s+");

    for(int i=0;i<splitArray.length;i++){

        if(splitArray.toString().matches(regex)){

        stringArray[i] = Character.toString(splitArray.toString().charAt(i));


    } else {

        opr = Character.toString(splitArray.toString().charAt(i));
        number = stringArray[i].toString();
        Cast[i] = Integer.parseInt(number);

        if(Cast.length == 2){
            Arrays.fill( Cast, (Integer) null );
        }


        switch(opr){

        case "+":
            Answer = Cast[1] + Cast[2];


        }

    }




}

} 

}

1 个答案:

答案 0 :(得分:0)

问题很简单,例如输入:2 + 2,你调用split数组函数,但是返回的值是字符串本身,长度为1(不是字符)=(“2 + 2”)。转换为字符数组。

String[] result = input.toCharArray();

然后你现在可以循环每个索引。 int len = result.length;例如,0 = 2,1 = +,2 = 2 有意义吗?