In Java, Basic Calculator Handling Invalid Numbers Without Exception Mechanism

public class Exercise12_82{

    private static int parseOrQuit(String str){
        if(!str.matches("^\\d+$")){
            System.out.println("Wrong input: " + str);
            System.exit(1);
        }
        return new Integer(str);
    }

    public static void main(String[]args){
        if(3 > args.length){
            System.out.println("Error: Too few arguments!");
            return;
        }
        int n1 = parseOrQuit(args[0]);
        int n2 = parseOrQuit(args[2]);
        int n3 = 0;
        switch(args[1].charAt(0)){
            case '+': n3 = n1 + n2; break;
            case '-': n3 = n1 - n2; break;
            case 'x': n3 = n1 * n2; break;
            case '/': n3 = n1 / n2; break;
            default: 
                System.out.println("Error: Invalid operator!");
                return;
        }
        System.out.printf("%d %s %d = %d%n", n1, args[1], n2, n3);
    }
}
Download

Comments

Popular posts from this blog