我这里有这个方法:
public char charAt(int location) {
//TODO Finish method
return "a";
}
我添加了 return"a"
只是为了测试 char 数据类型,因为我是一名学生并且是 java 新手。我从 Eclipse 收到一个错误,告诉我转换为 String。是"A"
不是一个character
?
它将返回 1;没有问题,但它不会需要一个字母character
?
谢谢。
我这里有这个方法:
public char charAt(int location) {
//TODO Finish method
return "a";
}
我添加了 return"a"
只是为了测试 char 数据类型,因为我是一名学生并且是 java 新手。我从 Eclipse 收到一个错误,告诉我转换为 String。是"A"
不是一个character
?
它将返回 1;没有问题,但它不会需要一个字母character
?
谢谢。
应该
public char charAt(int location) {
//TODO Finish method
return 'a';
}
不是"
引号,应该是'
喜欢阅读:Java中的单引号和双引号有区别吗?
编译器将其中的所有"doublequotes"
内容视为字符串。如果您想要一个字符,请使用单引号:'a'
.
为什么return "a";
不工作但是return 1
;是:
int 可以转换为 char。
字符串不能(自动)转换为字符。
它应该'a'
代替"a"
. 双引号代表String
,单引号代表char
。所以你的代码应该是
public char charAt(int location) {
//TODO Finish method
return 'a';
}
您正在返回一个字符串而不是 char
这样做
public char charAt(int location) {
//TODO Finish method
return 'a';
}
尝试
public char charAt(int location) {
//TODO Finish method
String str ="a"; // actual string could be different
return str.charAt(location);
}
如果这是一个字符使用如下
public char charAt(int location) { //return char
return 'a';
}
或者
public int charAt(int location) { //return int value of char
return 'a';
}