软件园学生在线

  • {{ item.name }}
  • 2023试用期

登录与注册

后端一培作业

  • 6
  • 2023-10-29
  • 0

后端一培作业

产品说明

使用方法

  1. 手打URL

*localhost:8080/main/calculate?a=(数据)&b=(运算符=,-,,/,)&c=(数据)**

PS:“()”和()内解释一起替换

  1. 在postman中用Post-param输入参数
    • a = (数据)
    • b = (运算符=,-,*,/,)
    • c = (数据)

特殊情况

除法运算中,分母为0无法计算。
解决方法:利用if语句先判断分母是否为零,若是,则提示“分母不能为零”,若不是,则正常运算。

学习过程

  1. 根据文档“基于 Spring boot 的简单 REST API”与培训课内容简单学习相关知识,了解了注解,路由,服务,速建包装类(虽然这次没用上)。
  2. 通过网路(包括但不限于CSDN,bilibili等)了解如何实现四则运算。
  3. 最后,CV(bushi,CV半天全红了跑不了一点(大概是因为学百家所长导致的),自己把原来的Project整个删了又整了个新的demo模板,靠着IDEA的辅助带飞与自己那有都没有的理解,一点点抠出来一个算数的玩意。(真蚌埠住了

代码

Controller

import com.example.demo.service.MainService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/main")
public class CalculateController {
    @Autowired
    MainService mainService;
    @PostMapping("/calculate")
    public String cll(@RequestParam double a, @RequestParam Character b, @RequestParam double c){
        return mainService.calculate(a, b, c);
    }

}

Service

import org.springframework.stereotype.Service;

@Service
public class  MainService{

    public String calculate(double a, Character b, double c) {
        //声明
        double num1 = a;
        char oper = b;
        double num2 = c;
        String result = null;

        //判断加减乘除并计算
        switch (b) {
            case '+':
                result = String.valueOf(num1 + num2);
                break;
            case '-':
                result = String.valueOf(num1 - num2);
                break;
            case '*':
                result = String.valueOf(num1 * num2);
                break;
            case '/':
                //排除分母为零的错误情况
                if (num2 != 0) {
                    result = String.valueOf(num1 / num2);
                } else {
                    String error = "分母不能为零";
                    result = "" + error;
                }
                break;
        }
    return result;
    }
}
6
6
© 2025 软件园学生在线
Theme by Wing