版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/pxl20171799/article/details/85076273
题目:设计程序,实现把s1中的串反转后放到s2中去
分析:有两种方法
一、使用StringBuffer 类的reverse 函数,直接将字符串反转
但是在使用是要注意,构造函数的参数是StringBuffer 类的对象,但是StringBuffer的对象 不能直接输入,或者是通过带参数的函数直接带着,需要先定义一个String 类型的参数,然后用String 类型的参数创建一个StringBuffer类的对象,然后放到构造函数中去,才能执行后面的操作。
二、使用字符串数组的方法
将一个字符串拆开,将每一个字符都保存到数组中,然后逆序输出数组元素即可。
关键代码:
char[] a=ss.toCharArray();
String string="";
for(int i=ss.length()-1;i>=0;i--)
{
string+=a[i];
}
方法一的详细代码:
package 反转的串;
public class Trans {
private StringBuffer s1;
public Trans(StringBuffer s1) {
this.s1 = s1;
}
public Trans() {}
public StringBuffer getS1() {
return s1;
}
public void setS1(StringBuffer s1) {
this.s1= s1;
}
public StringBuffer fan()
{
//实现字符的反转
StringBuffer s2=s1.reverse();
return s2;
}
}
package 反转的串;
import java.util.Scanner;
public class T_test {
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
String s;//先定义一个字符串
s=cin.next();
cin.close();
StringBuffer stringBuffer=new StringBuffer(s);//用字符串创建一个StringBuffer类的对象
Trans trans=new Trans(stringBuffer);
System.out.println(trans.fan());
}
}
方法二详细代码:
package 反转的串;
public class Trans2 {
private String ss;
public Trans2(String ss) {
this.ss = ss;
}
public Trans2() {}
public String getSs() {
return ss;
}
public void setSs(String ss) {
this.ss = ss;
}
public String fans()
{
char[] a=ss.toCharArray();
String string="";
for(int i=ss.length()-1;i>=0;i--)
{
string+=a[i];
}
return string;
}
}
package 反转的串;
import java.util.Scanner;
public class T2_test {
public static void main(String[] args) {
String ss=new String();//定义时先初始化
Scanner cin=new Scanner(System.in);
ss=cin.nextLine();
cin.close();
Trans2 trans2=new Trans2(ss);
System.out.println(trans2.fans());
}
}