前面用Java编写一个字符串

时间:2011-11-18 17:33:42

标签: java string

基本上我正在寻找一个字符串,只是在前后交替。例如,假设我有以下字符串。

Android

然后输出如下:

adnidor

它会在正面和背面之间交替

First letter `a`
Last letter `d`
Second letter `n`
Second to last `i`
etc.
to give `adnidor` in the end

怎么可能这样呢?

=======

最终解决方案是这样的:

String r = "";
String s = "android";
int i = 0;
int j = s.length() - 1;
while (i < j) {
    r += s.charAt(i++);
    if (i < j) {
        r+= s.charAt(j--);
    }
}
if (s.length() % 2 == 0) {
    int l = (s.length() / 2) - 1;
    int f = l + 1;
    r = r + s.charAt(f);
}
else {
    int l = ((s.length()) / 2);
    r = r + s.charAt(l);
}

1 个答案:

答案 0 :(得分:1)

String weird_transformation(String s) {
  r = "";
  int i = 0;
  int j = s.length() - 1;
  while (i < j) {
    r += s.charAt(i++);
    if (i <= j) {
       r+= s.charAt(j--);
    }
  }
  return r;
}