我有一个方法,我传递两个int参数,并返回一个字符串。循环将确保如果第一个参数(更大的值)大于第二个参数,则第一个参数将递减,直到它等于第二个参数的值(较小的值)。
我遇到的问题是我每次循环运行后都会尝试返回递减值的值。我希望将这些值作为字符串返回,例如" 8,6,4,2"。我会如何设置它?
public String countDown(int arg1, int arg2){
if (arg1>arg2){
for (int i = arg1; arg1>arg2;i--){
//???
return i;
}
}
答案 0 :(得分:1)
使用StringBuilder:
public String countDown(int arg1, int arg2){
final StringBuilder stringBuilder = new StringBuilder();
if (arg1>arg2){
for (int i = arg1; arg1>arg2;i--){
//???
stringBuilder.append(/*whatever*/);
}
}
return stringBuilder.toString();
}
答案 1 :(得分:0)
您需要将return
置于循环之外。
你需要在循环之前声明一个对象,在最后一次返回它之前,存储你遇到它们时的值。
String out = "";
for(int i = arg1; i>arg2; i--) {
out = out + i + ",";
}
return out;
这有几个问题:
您可以通过在此网站上搜索(无需提出其他问题)或在Java教科书中提前阅读来找到这两方面的帮助。