首页 > 编程语言 > 详细

面向对象-java控制台计算器简单实现[50行]

时间:2015-10-13 18:48:09      阅读:404      评论:0      收藏:0      [点我收藏+]

---恢复内容开始---

技术分享
 1 import java.util.*;
 2 public class Test{
 3     public  static  void main(String [] args){
 4         String  add="add",sub="dub",mul="mul",div="div";
 5         // [需求]  写一个面向对象的计算器程序;
 6         CalcuImpl  test  = new CalcuImpl();
 7         while(true){
 8             System.out.println("please input two any numbers?And one operatot example[14 add 15]");
 9             test.Operator(new Scanner(System.in).nextDouble(),new Scanner(System.in).nextDouble(),new Scanner(System.in).next());
10         }
11     }
12 }
13 interface Calculator{
14     public void Operator(double num1,double num2,String operator);
15 }
16 interface Operator{
17     public double add(double num1,double num2);
18     public double sub(double num1,double num2);
19     public double mul(double num1,double num2);
20     public double div(double num1,double num2);
21 }
22 class OperaotrImpl implements Operator{
23     public double add(double num1,double num2){
24         return num1+num2;
25     }
26     public double sub(double num1,double num2){
27         return num1-num2;
28     }
29     public double mul(double num1,double num2){
30         return num1*num2;
31     }
32     public double div(double num1,double num2){
33 
34         return num1/num2;
35     }
36 }
37 class CalcuImpl implements Calculator{
38     final static String ADD ="add",SUB="sub",MUL="mul",DIV="div";
39     OperaotrImpl   o  = new OperaotrImpl();
40     public void Operator(double num1,double num2,String operator){
41         switch(operator){
42             case ADD:System.out.println(o.add(num1,num2));
43                break;
44             case SUB:System.out.println(o.sub(num1,num2));
45                break;
46             case MUL:System.out.println(o.mul(num1,num2));
47                break;
48             case DIV:System.out.println(o.div(num1,num2));
49                break;
50         }
51     }
52 }
View Code

有点基础的看看吧,都很简单,所以没写注释;

---恢复内容结束---

import java.util.*;
public class Test{
    public  static  void main(String [] args){
        String  add="add",sub="dub",mul="mul",div="div";
        // [需求]  写一个面向对象的计算器程序;
        CalcuImpl  test  = new CalcuImpl();
        while(true){
            System.out.println("please input two any numbers?And one operatot example[14 15 add]");
            test.Operator(new Scanner(System.in).nextDouble(),new Scanner(System.in).nextDouble(),new Scanner(System.in).next());
        }
    }
}
interface Calculator{
    public void Operator(double num1,double num2,String operator);
}
class Operator{
    public double add(double num1,double num2){return 0.0;}
    public double sub(double num1,double num2){return 0.0;}
    public double mul(double num1,double num2){return 0.0;}
    public double div(double num1,double num2){return 0.0;}
}
class OperaotrImpl extends Operator{
    //  继承可以减少代码 的冗余,需要哪个就 Override父类的方法;
    public double add(double num1,double num2){
        return num1+num2;
    }
    public double sub(double num1,double num2){
        return num1-num2;
    }
    public double mul(double num1,double num2){
        return num1*num2;
    }
    public double div(double num1,double num2){

        return num1/num2;
    }
}
class CalcuImpl implements Calculator{
    final static String ADD ="add",SUB="sub",MUL="mul",DIV="div";
    OperaotrImpl   o  = new OperaotrImpl();
    public void Operator(double num1,double num2,String operator){
        switch(operator){
            case ADD:System.out.println(o.add(num1,num2));
               break;
            case SUB:System.out.println(o.sub(num1,num2));
               break;
            case MUL:System.out.println(o.mul(num1,num2));
               break;
            case DIV:System.out.println(o.div(num1,num2));
               break;
        }
    }
}

 

技术分享
 1 import java.util.*;
 2 public class Test{
 3     public  static  void main(String [] args){
 4         String  add="add",sub="dub",mul="mul",div="div";
 5         // [需求]  写一个面向对象的计算器程序;
 6         CalcuImpl  test  = new CalcuImpl();
 7         while(true){
 8             System.out.println("please input two any numbers?And one operatot example[14 add 15]");
 9             test.Operator(new Scanner(System.in).nextDouble(),new Scanner(System.in).nextDouble(),new Scanner(System.in).next());
10         }
11     }
12 }
13 interface Calculator{
14     public void Operator(double num1,double num2,String operator);
15 }
16 interface Operator{
17     public double add(double num1,double num2);
18     public double sub(double num1,double num2);
19     public double mul(double num1,double num2);
20     public double div(double num1,double num2);
21 }
22 class OperaotrImpl implements Operator{
23     public double add(double num1,double num2){
24         return num1+num2;
25     }
26     public double sub(double num1,double num2){
27         return num1-num2;
28     }
29     public double mul(double num1,double num2){
30         return num1*num2;
31     }
32     public double div(double num1,double num2){
33 
34         return num1/num2;
35     }
36 }
37 class CalcuImpl implements Calculator{
38     final static String ADD ="add",SUB="sub",MUL="mul",DIV="div";
39     OperaotrImpl   o  = new OperaotrImpl();
40     public void Operator(double num1,double num2,String operator){
41         switch(operator){
42             case ADD:System.out.println(o.add(num1,num2));
43                break;
44             case SUB:System.out.println(o.sub(num1,num2));
45                break;
46             case MUL:System.out.println(o.mul(num1,num2));
47                break;
48             case DIV:System.out.println(o.div(num1,num2));
49                break;
50         }
51     }
52 }
View Code

有点基础的看看吧,都很简单,所以没写注释;

面向对象-java控制台计算器简单实现[50行]

原文:http://www.cnblogs.com/suowei/p/4875362.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!