原文:
Write code to reverse a C-Style String. (C-String means that “abcd” is represented as five characters, including the null character.)
译文:
写代码翻转一个C风格的字符串。(C风格的意思是"abcd"需要用5个字符来表示,包含末尾的 结束字符)
package chapter_1_arraysandstring;
import java.util.Scanner;
/**
* 写代码翻转一个C风格的字符串。(C风格的意思是"abcd"需要用5个字符来表示,包含末尾的 结束字符)
*
* char[] toString() 是使用object的toString()
*
* @author LiangGe
*
*/
public class Question_1_2 {
public String reverse(String str) {
int len = str.length();
char[] result = new char[len + 1];
result[0] = '_';
for (int i = 0; i < len / 2; i++) {
result[i + 1] = str.charAt(len - 1 - i);
result[len - i] = str.charAt(i);
}
// 字符串长度为奇数
if (len % 2 != 0) {
result[len/2 + 1] = str.charAt(len/2);
}
return String.valueOf(result);
}
public static void main(String[] args) {
Question_1_2 question = new Question_1_2();
Scanner scanner = new Scanner(System.in);
String str;
while (scanner.hasNext()) {
str = scanner.next();
str = question.reverse(str);
System.out.println(str);
}
}
}