大致步骤如下:
1.让用户输入参数
Scanner input=new Scanner(System.in);
System.out.println(“请输入第一个数字:”);
double num1=input.nextDouble();
System.out.println(“请输入您要进行得运算:”);
double opeation=input.nextDouble();
System.out.println(“请输入第二个数字:”);
double num2=input.nextDouble();
2.进行运算
System.out.println(“计算的结果是:”);
3.返回结果
正常来说,初学者我们都是把所有内容都是写到了 main方法中
后来我们学了面向对象之后,我们可以把一些计算得内容 重复的内容 封装为对象可以调用得方法!
public double operationNumber(String type) throws Exception {
if(this.num2==0){
throw new Exception(“除数不能为0”);
}
if("".equals(type)){
result=this.num1this.num2;
}else if("/".equals(type)){
result=this.num1/this.num2;
}else if("-".equals(type)){
result=this.num1-this.num2;
}else if("+".equals(type)){
result=this.num1+this.num2;
}
return result;
}
但是显然不够,对于 代码得灵活性 和扩展性来说 我们可以用我们学得设计模式,进一步改善 , 简单工厂模式 ,我们可以建立一个父类Operation工厂类 ,四个子类 加减乘除 ,
这个看起来就简单点在测试类中;
工厂方法模式:我们可以创建父类工厂得子类工厂,也就是每一个子类所对应得子类工厂;
这个就需要 if else 在main方法中判断 进行使用;扩展性更好 不用改变方法内部 的内容;
抽象工厂模式:我们得计算加减乘除 ,就可分为 小数,或者 分数得加减乘除 等等,分为某一产品类别的时候使用 。上篇 设计模式 有给出 具体的 图形 。更易理解;
再接再厉 !!