为了账号安全,请及时绑定邮箱和手机立即绑定

为什么return报错?

public static String Bookname(String[] book){//报错This method must return a result of type String

String name=input.nextLine();

for(int i=0;i<book.length;i++ ){

if(name.equals(book[i])){

return book[i];

}

而下面这个却没有报?

private static String getBookByName(String[] books)

throws Exception {

System.out.println("输入图书名称:");

//获取输入的图书名称

String name = console.next();

for (int i = 0; i < books.length; i++) {

if (name.equals(books[i]))

//输入的名称与某一图书名称匹配,返回该图书

return books[i];

}

//若无匹配,抛出”图书不存在异常“

throw new Exception("图书不存在!");

}


正在回答

2 回答

public static String Bookname(String[] book){    //报错This method must return a result of type String
    String name=input.nextLine();
    for(int i=0;i<book.length;i++ ){        //遍历
        if(name.equals(book[i])){            // 如果有符合的则返回; 没考虑全部不符合的情况 所以报错
            return book[i];
        }
    }
    // 可以在这里加上 return null;就ok了
}


0 回复 有任何疑惑可以回复我~

你是不是问过这个问题了

0 回复 有任何疑惑可以回复我~
#1

ffs555 提问者

是的,我看了参考代码也没有返回值,不明白他的为啥没报错。。
2017-03-07 回复 有任何疑惑可以回复我~
#2

ziom 回复 ffs555 提问者

我不是回复过你了吗。参考代码是哪里的,书上的吗,那有可能是伪代码或者参考代码本来就是错的
2017-03-07 回复 有任何疑惑可以回复我~
#3

ffs555 提问者 回复 ziom

第三季1-9右边参考代码下载的 不懂
2017-03-07 回复 有任何疑惑可以回复我~
#4

ziom 回复 ffs555 提问者

那应该是代码本身就有问题吧
2017-03-07 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409792    人
  • 解答问题       4340    个

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

进入课程

为什么return报错?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信