我无法弄清楚为什么会收到此错误。
以下是代码:
public static int WriteBirdType() {
BufferedReader reader = new BufferedReader( new FileReader ("fugler.txt"));
String line = null;
StringBuilder stringBuilder = new StringBuilder();
String ls = System.getProperty("line.separator");
while( ( line = reader.readLine() ) != null ) {
stringBuilder.append( line );
stringBuilder.append( ls );
}
return stringBuilder.toString();
这是错误:
test.java:78: error: incompatible types
return stringBuilder.toString();
^
required: int
found: String
1 error
我该怎么做才能解决这个问题?
答案 0 :(得分:5)
当您声明方法返回String
时,您试图返回int
。要么返回int
,要么将方法的返回类型更改为String
。
答案 1 :(得分:4)
您的返回类型必须与方法签名匹配。
如果返回类型为int
,则需要返回int而不是字符串。 toString()
返回一个字符串。如果需要返回String,则将方法签名更改为String,而不是int。
这样做:
//change return type to string
public static String WriteBirdType() {
BufferedReader reader = new BufferedReader( new FileReader ("fugler.txt"));
String line = null;
StringBuilder stringBuilder = new StringBuilder();
String ls = System.getProperty("line.separator");
while( ( line = reader.readLine() ) != null ) {
stringBuilder.append( line );
stringBuilder.append( ls );
}
return stringBuilder.toString();