返回值的问题老师求助!!

来源:1-9 经验总结

sw_0001

2014-11-12 22:31

private static String getBookByName(String[] books) {
		System.out.println("请输入书名:");
		String name=input.next();
		for(int i=0;i<books.length;i++){
			if(name.equals(books[i])){
				
				return books[i];
			}else{
				return "1111";
			}
				
//		}throw new Exception("图书不存在");	
			
		}
	}	

使用if  else成对的判断语句在使用返回值为什么程序认定我没有返回值呢  equals返回值是true啊不是囊括了所有可能的情况吗

写回答 关注

4回答

  • Darren_Huang
    2015-01-06 21:42:21
    private static String getBookByName(String[] books) {
            System.out.println("请输入书名:");
            String name=input.next();
            for(int i=0;i<books.length;i++){
                if(name.equals(books[i])){
                    return books[i];
                }
            }
            return "1111";
        }


  • Darren_Huang
    2015-01-06 21:30:59
    private static String getBookByName(String[] books) {
            System.out.println("请输入书名:");
            String name=input.next();
            for(int i=0;i<books.length;i++){
                if(name.equals(books[i])){
                     
                    return books[i];
    //            }else{
                    return "1111";
    //            }
                     
    //      }throw new Exception("图书不存在");   
                 
            }
        }


  • sw_0001
    2014-11-12 23:18:56

    谢谢!我想着模仿老师那个写,但是没写抛出异常的时候发现的这个返回值问题,在for循环里这样就不行了!!那么在不抛异常的情况下怎么才能与数组里的元素做比较判断还能作为返回值呢

  • 好的吧
    2014-11-12 22:49:11

    这么写明显逻辑不对(暂且不管)  你还有种情况没有考虑到 就是 不走for循环的换 没有返回值 所以你要在for循环外加 return "";

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题