黑马程序员技术交流社区

标题: 粗制计算器 [打印本页]

作者: luck_start    时间: 2015-9-30 00:36
标题: 粗制计算器
import java.util.Scanner;

class CalculateDemo {
        static{System.out.println("支持+-*/的整数运算,除数不能为0;请输入一个数A,运算符,一个数B,比如:1+3");}
        public static void main(String[] args) {
                Calculate cl=new Calculate();
                cl.check();
                cl.calculate();
        }
}

//粗制计算器
class Calculate{
        String s="";
        int operater=0;
        int index=0;
       
        //创建check方法,判断输入的算数运算符,只能输入+,-,*,/
        void check(){
                Scanner sc=new Scanner(System.in);
                s=sc.next();
                if(s.contains("*")){
                        operater=1;       
                        index=s.indexOf("*");
                }else
                if(s.contains("/")){
                        operater=2;       
                        index=s.indexOf("/",0);
                }else
                if(s.contains("+")){
                        operater=3;       
                        index=s.indexOf("+");
                }else
                if(s.contains("-")){
                        operater=4;
                        index=s.indexOf("-",1);
                }
        }
        //创建计算方法,将输入的字符串分成2个整数,并用计算出结果显示
        void calculate(){
                String a=s.substring(0,index);
                String b=s.substring(index+1);
                int num1=0;
                int num2=0;
               
                //try方法用于处理用户输出的异常数据
                try{
                        num1=Integer.parseInt(a);
                        num2=Integer.parseInt(b);
                        switch(operater){
                                case 1:System.out.println(num1*num2);
                                break;
                                case 2:System.out.println(num1/num2);
                                break;
                                case 3:System.out.println(num1+num2);
                                break;
                                case 4:System.out.println(num1-num2);
                                break;
                                default:System.out.println("SORRY!您输入的运算符有误");
                                check();
                                calculate();
                        }
                }
                catch(Exception e){
                        System.out.println("SORRY!您的输入有误,请再输入一遍");
                        check();
                        calculate();
                }
        }
}
作者: luck_start    时间: 2015-9-30 00:38
老师布置的小作业,分享下
作者: luck_start    时间: 2015-9-30 00:39
老师布置的小作业,分享下
作者: heygirl    时间: 2015-10-3 12:04
谢谢分享!
作者: 赵存金    时间: 2015-10-3 12:16
可以,学习了
作者: 阿萨德豆腐干    时间: 2015-10-3 12:21
看不懂 学学
作者: 915816106    时间: 2015-10-3 12:56
厉害厉害




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2