【发布时间】:2013-10-12 15:18:50
【问题描述】:
我正在编写一种方法来查找给定字符串中的大写字母。我有这个
public static String FindUpperCase (String x){
for (int i = x.length(); i>=0; i--){
if (Character.isUpperCase(x.charAt(i))){
return x.substring(i); }
}
但是我收到一个错误,告诉我必须返回一个字符串。当我查看 API 时,它告诉我它返回的字符串是另一个字符串的子集……这意味着我正在返回一个字符串,对吗?有人告诉我这是因为我在循环中返回了一个字符串,这不是一回事,但我对这意味着什么有点困惑,因为方法中不是循环吗?有谁知道我做错了什么或如何解决这个问题?
【问题讨论】:
-
这是在抱怨,因为如果
if语句始终计算为false,您还没有返回字符串。 -
您的代码只有在进入 IF 条件时才会返回一个字符串。如果 IF 从未执行过怎么办?
-
“查找大写字母”是指“第一个大写字母之后的字符串部分”吗?
-
所有执行路径必须返回一个字符串。
-
我想知道为什么反对这个问题,只是为了清楚
标签: java string if-statement for-loop return