繁体   English   中英

在我的Java计算器中需要帮助

[英]Need help in my java calculator

我最近开始学习Java,并尝试对计算器进行编程,但是它给了我错误(而且我不明白为什么会这样)。

PS:对不起,我英语不好

package pkg2;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        System.out.println("Write a number: ");
        int first = reader.nextInt();
        System.out.println("Write another number: ");
        int second = reader.nextInt();
        System.out.println("Write an operator: ");
        char operator = reader.nextInt();
        if(operator == '+') {
            System.out.println(first + second);
        }
        else if(operator == '-') {
            System.out.println(first - second);
        }
        else if(operator == '*') {
            System.out.println(first * second);
        }
        else if(operator == '/') {
            System.out.println(first / second);
        }
    }
}

错误是:

在此处输入图片说明

当提示您输入运算符时,您正在尝试读取int而不是char。 这是您应该如何做:

package pkg2;

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        System.out.println("Write a number: ");
        int first = reader.nextInt();
        System.out.println("Write another number: ");
        int second = reader.nextInt();
        System.out.println("Write an operator: ");
        char operator = reader.next().charAt(0);
        if(operator == '+') {
            System.out.println(first + second);
        }
        else if(operator == '-') {
            System.out.println(first - second);
        }
        else if(operator == '*') {
            System.out.println(first * second);
        }
        else if(operator == '/') {
            System.out.println(first / second);
        }
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM