/*
1,将字符串中进行反转。abcde --> edcba
思考:以前我们做过数组的反转 一个字符串可不可以变成数组
分析:1.字符串怎样可能变成数组
2.将数组的元素进行反转
3.将一个数组在变成字符串
步骤 1. 字符串--->数组 getBytes() toCharArray();
2. 数组中的头尾元素交换
3. 要将byte数组转换成字符串 构造方法
要将char数组转换成字符串 valueOf 构造
*/
class Test2
{
public static void main(String[] args)
{
String s="abcde";
char[] ch=stringToCharArray(s);
reverseCharArray(ch);
String rs=charArrayToString(ch);
System.out.println(rs);
}
//要将char数组变成字符串
//参数: 要转换char数组
//返回值:得到的字符串
public static String charArrayToString(char[] ch){
//使用valueOf
//return String.valueOf(ch);
//使用构造方法
return new String(ch);
}
//将数组中的元素进行反转
//参数:要操作的数组
//返回值:void
public static void reverseCharArray(char[] ch){
for(int i=0,j=ch.length-1;i<j;i++,j--){
//要将i,j位置上的元素交换
swap(ch,i,j);
}
}
//将数组中的指定位置上的元素交换
private static void swap(char[] ch,int i,int j){
char c=ch[i];
ch[i]=ch[j];
ch[j]=c;
}
//将一个字符串转换成char数组
//参数:要操作的字符串
//返回值:char数组
public static char[] stringToCharArray(String s){
return s.toCharArray();
}
}
|
|