编写accum方法,实现如下效果:
accum(“abcd”) –> “A-Bb-Ccc-Dddd”
accum(“RqaEzty”) –> “R-Qq-Aaa-Eeee-Zzzzz-Tttttt-Yyyyyyy”
accum(“cwAt”) –> “C-Ww-Aaa-Tttt”
自己写了一个方法:
public static String accum(String s){
StringBuilder builder = new StringBuilder();
for (int i = 0; i < s.length(); i++) {
if(i > 0){
builder.append("-");
}
builder.append(s.substring(i,i+1).toUpperCase());
for (int j = 0; i > 0 && j < i; j++) {
builder.append(s.substring(i,i+1).toLowerCase());
}
}
return builder.toString();
}
codewars给出的评分最高的方法是:
public static String accum(String s){
StringBuilder builder = new StringBuilder();
int i = 0;
for (char c : s.toCharArray()) {
if (i > 0) {
builder.append("-");
}
builder.append(Character.toUpperCase(c));
for (int j = 0; j < i; j++) {
builder.append(Character.toLowerCase(c));
}
i++;
}
return builder.toString();
}