A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 胡高德 中级黑马   /  2012-12-6 22:11  /  1597 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
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();
}
}

3 个回复

正序浏览
这个不是和毕老师的那个视频差不多嘛
回复 使用道具 举报
共同学习。我通常都这么干
String s="abcde";
StringBuffer sb = new StringBuffer(s);
System.out.println(sb.reverse().toString());
回复 使用道具 举报
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马