我需要它作为返回的int,但它一直在说
----jGRASP exec: javac -g CSCD210Lab8Functions.java
CSCD210Lab8Functions.java:118: incompatible types
found : int
required: java.lang.String
return finalExam;
public static String readFinalScore(Scanner kb)
{int finalExam;
do{
kb.nextLine();
System.out.print("Enter the score of the final-->");
finalExam = kb.nextInt();
kb.nextLine();
if (finalExam<0)
{System.out.print("Invalid answer please try again " );}
}while(finalExam<0);
return finalExam;
我把它作为一个int,然后kb.nextInt不知道为什么它吓坏了
答案 0 :(得分:1)
如果需要int
String
变化:
public static String readFinalScore(Scanner kb)
进入:
public static int readFinalScore(Scanner kb)
答案 1 :(得分:1)
如果您打算声明方法返回String
,则java不会自动将int
转换为String
。
将您的return
声明更改为:
return String.valueOf(finalExam);
或者你也可以“作弊”:
return finalExam + "";
但是,如果你真的想要返回一个int
,那么就像这样声明你的方法:
public static int readFinalScore(Scanner kb)
您当前的方法代码将有效。
答案 2 :(得分:1)
public static String readFinalScore(Scanner kb) // return type String
{int finalExam; // finalExam is int
...
return finalExam; // returning int value when it expects String
返回类型为String
,finalExam
为int。
更改为
public static int readFinalScore(Scanner kb)
答案 3 :(得分:0)
您的退货声明不正确。您应该更改为int
而不是String
。
public static int readFinalScore(Scanner kb)
return finalExam ;
}
答案 4 :(得分:0)
您的退货声明不匹配..
因此您可以使用Integer.toString(finalExam)
返回String类型
希望有所帮助......