需求:定义一个方法,实现字符串反转。键盘录入一个字符串,调用该方法后,在控制台输出结果。
例如:键盘录入abc,输出cba。
方法一:
import java.util.Scanner;
public class StringExample {
public static void main(String[] args) {
//键盘录入一个字符串
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String line = sc.nextLine();
//调用方法,用一个变量接收结果
String s = reverse(line);
//输出结果
System.out.println(s);
}
//定义一个方法,实现字符串反转
public static String reverse(String s) {
//在方法中把字符串倒着遍历,然后把每一个得到的字符拼接成一个字符串并返回
String ss = "";
for(int i=s.length()-1;i>=0;i--) {
ss += s.charAt(i);
}
return ss;
}
}
方法二:通过StringBuilder实现
import java.util.Scanner;
public class StringBuilderExample2 {
public static void main(String[] args) {
//键盘录入一个字符串
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String line = sc.nextLine();
//调用方法,用一个变量接收结果
String s = myReverse(line);
//输出结果
System.out.println(s);
}
//定义一个方法,实现字符串反转
public static String myReverse(String line) {
//在方法中用StringBuilder实现字符串的反转
//String --- StringBuilder --- reverse --- String
//StringBuilder s = new StringBuilder(line);
//s.reverse();
//把结果转成String返回
//String s1 = s.toString();
//return s1;
//上面的代码可简化为一行
return new StringBuilder(line).reverse().toString();
}
}