码迷,mamicode.com
首页 > 编程语言 > 详细

自己遇到过的出现java.lang.StackOverflowError的原因

时间:2018-07-10 12:52:54      阅读:660      评论:0      收藏:0      [点我收藏+]

标签:nta   overflow   with   sub   递归   rom   就是   static   weather   

    public static JSONArray geth24Weather(String result) {//获取当天24小时以及第二天的天气结果对象
        JSONObject fromObject = null;
        JSONArray h24weatherArray =null;
        try {
            int indexOf = result.indexOf("{");
            int lastIndexOf = result.lastIndexOf("}");
            result=result.substring(indexOf, lastIndexOf+1);
            String replaceAll = result.replaceAll(" ", "");

            if(replaceAll.trim().startsWith("{")){
            fromObject = JSONObject.fromObject(result);
            }
            //System.out.println("fromObject"+fromObject);
        } catch (Exception e) {
            e.printStackTrace();
        }
        if(fromObject!=null&&fromObject.get("code").equals("0")){
             JSONArray jsonArray = fromObject.getJSONArray("data");//获取天气数据对象
             JSONArray  forecastArray= ((JSONObject)jsonArray.get(0)).getJSONArray("forecast");//获取预报天气对象
             JSONObject todayObj= (JSONObject)forecastArray.get(0);//获取到当天对象
             if(todayObj.containsKey("h24weather")&&todayObj.get("h24weather")!=null){
                 System.out.println("打印todayObj="+todayObj);
                 h24weatherArray=todayObj.optJSONArray("h24weather");
                if(h24weatherArray==null){
                     geth24Weather(result);
                 }
                 System.out.println("打印h24weatherArray="+h24weatherArray);
             }else{
                
                 System.out.println("空");
             }
            
        }
        return h24weatherArray;
    }

这个就是递归没有结束条件,一旦遇到result是null那么这个就会无限循环下去,就会在栈中不断调用方法,直至栈溢出。

自己遇到过的出现java.lang.StackOverflowError的原因

标签:nta   overflow   with   sub   递归   rom   就是   static   weather   

原文地址:https://www.cnblogs.com/wth21-1314/p/9288269.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!