黑马程序员技术交流社区
标题:
String问题大神帮忙 要详解
[打印本页]
作者:
姜秋艺
时间:
2015-5-22 23:39
标题:
String问题大神帮忙 要详解
本帖最后由 姜秋艺 于 2015-5-23 22:08 编辑
键盘输入字符串, abc
输出结果 cba
字符串的反转 != 倒着遍历
实现步骤:
键盘输入
将字符串--转成字符数组 toCharArray
数组的反转 -- 最远端换位
数组变回字符串 -- 构造方法
作者:
tanzhixue
时间:
2015-5-23 00:07
这个挺简单的 首先char[] ch=s.toCharArry(); 得到数组 然后遍历 换位 就OK了 for(int x=0,y=ch.length-1;x<y;x++,y--)然后换位置
作者:
途中ms前进
时间:
2015-5-23 19:09
{public static void main(String[] args)
{
BufferedReader bufr=null;
BufferedWriter bufw=null;
try
{
bufr=new BufferedReader(new InputStreamReader(System.in));
bufw=new BufferedWriter(new OutputStreamWriter(System.out));
String line=null;
while((line=bufr.readLine())!=null)
{
char[] arr=line.toCharArray();
reverse(arr);
bufw.write(new String(arr));
bufw.newLine();
bufw.flush();
}
}
catch(Exception e)
{
throw new RuntimeException("读取失败");
}
finally
{try{if(bufr!=null)
bufr.close();
}
catch(Exception e)
{
throw new RuntimeException("读取关闭失败");
}
}
try{
if(bufw!=null){
bufw.close();
}
}
catch(Exception e)
{
throw new RuntimeException("输出关闭失败");
}
}
public static void reverse(char[] arr)
{for(int start=0,end=arr.length-1;start<end;start++,end--)
swap(arr,start,end);
}
public static void swap(char[] arr,int x,int y)
{char temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2