Java 递归 死循环解决办法自创

业务上遇到的,引入递归担心第三方接口不稳定陷入死循环,故自己想了一个解决办法,代码如下,如果帮到各位请帮我点个赞,谢谢

 public JSONObject getLocus(String token,String  mapType, String imei, String  startTime,String endTime,Integer index){

        Map<String, String> headerMap = new HashMap<String, String>();
        headerMap.put("Content-Type", "application/x-www-form-urlencoded");

        Map<String, String> paramMap = new HashMap<String, String>();
        // 公共参数
        paramMap.put("app_key", app_key);
        paramMap.put("v", "1.0");
        paramMap.put("timestamp", getCurrentDate());
        paramMap.put("sign_method", "md5");
        paramMap.put("format", "json");
        paramMap.put("method", "jimi.device.track.list");
        //私有参数
        paramMap.put("access_token", token);
        paramMap.put("imei", imei);
        paramMap.put("begin_time", startTime);
        paramMap.put("end_time", endTime);
        paramMap.put("map_type",mapType );
        JSONObject rep = sendPost(headerMap, paramMap);

        if("1004".equals(rep.getString("code"))){
            if(index==2){
                return null;
            }
            index++;
            getLocus(expire(),mapType,imei,startTime,endTime,index);

        }
        return  rep;
    }

关键点在于这个index,约定调用方法时传入1的参数,当到自己调用自己的时候传index++,那么第二次进来的时候index = 2,那就直接return,具体的业务场景使用方式不一样,大家可以灵活修改,本人只提供思路,如果帮到各位请帮忙点个赞谢谢

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值