Java 菜鸟教程

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Java 异常处理

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java程序使用switch ... case创建一个简单的计算器

Java 实例大全

在此程序中,您将学习如何使用Java中的switch..case创建一个简单的计算器。该计算器将能够对两个数字进行加,减,乘和除运算。

示例:使用switch语句的简单计算器

import java.util.Scanner;

public class Calculator {

    public static void main(String[] args) {

        Scanner reader = new Scanner(System.in);
        System.out.print("输入两个数字: ");

        //nextDouble()从键盘读取下一个double
        double first = reader.nextDouble();
        double second = reader.nextDouble();

        System.out.print("输入一个运算符 (+, -, *, /): ");
        char operator = reader.next().charAt(0);

        double result;

        switch(operator)
        {
            case '+':
                result = first + second;
                break;

            case '-':
                result = first - second;
                break;

            case '*':
                result = first * second;
                break;

            case '/':
                result = first / second;
                break;

            // 运算符不匹配 (+, -, *, /)
            default:
                System.out.printf("Error! operator is not correct");
                return;
        }

        System.out.printf("%.1f %c %.1f = %.1f", first, operator, second, result);
    }
}

运行该程序时,输出为:

输入两个数字 1.5
4.5
输入一个运算符  (+, -, *, /): *
1.5 * 4.5 = 6.8

用户输入的*运算符使用Scanner对象的next()方法存储在操作符变量中。

同样,使用Scanner对象的nextDouble()方法将两个操作数1.5和4.5分别存储在变量first和second中。

由于运算符*与条件case '*'相匹配:因此程序的控制跳转到

result = first * second;

语句计算结果并存储在变量result,同时break; 结束switch语句。

最后,printf语句被执行。

注意:我们使用的printf()方法代替println。这是因为这里我们要打印格式化的字符串。要了解更多信息,请访问Java printf()方法

Java 实例大全