JAVA 如何把一个局部变量(Map类型的)的值, 取出来返回给调用者?
JAVA如何把一个局部变量(Map类型的)的值,取出来返回给调用者?我的方法如下://递归遍历给定文件夹下所有的子文件夹和文件,把所得的结果放入Map中并返回public...
JAVA 如何把一个局部变量(Map类型的)的值, 取出来返回给调用者? 我的方法如下: // 递归遍历给定文件夹下所有的子文件夹和文件,把所得的结果放入Map中并返回 public Map<String, String> iterateFolder(File rootFolder, int level, String month) { Map<String, String> strMap = new HashMap<String, String>(); if (!rootFolder.isDirectory()) { System.out.println(rootFolder.getName() + " is not a directory! "); } else { String filesFullName[] = new String[1000]; String months = ""; File dirList[] = rootFolder.listFiles(); for (int i = 0; i < dirList.length; i++) { for (int j = 0; j <= level; j++) { // System.out.print("-Level-" + level); } if (dirList[i].isDirectory()) { // System.out.println(": <" + dirList[i].getName() + "> "); level++; iterateFolder(dirList[i], level, month); level--; } else if (dirList[i].isFile() && dirList[i].getName().endsWith(".log")) { months = dirList[i].getName().substring(dirList[i].getName().lastIndexOf("_") + 1); if (!"".equals(month) && months.substring(0, 6).equals(month)) { // System.out.println("The File>>> " + rootFolder + "\\" + dirList[i].getName()); strMap.put(filesFullName[i], rootFolder + "\\" + dirList[i].getName()); System.out.println(strMap.get(filesFullName[i])); } } } } if(strMap != null){ return strMap; }else{ return null; } } 可是 我在当前类下的main方法中调用时,发现返回的strMap 这个Map始终为空值,各位高手,能不能告诉小弟,到底是怎么回事呢?我想返回这个值,以便后续处理。
展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |