以下代码打印eleelde
,但我希望它打印elcaalde
。
我该怎么办?在index()
有替换char的函数吗?
我想在i=0
处为i=6
分配字符值,并打印elcaalde
字样。
public class ReverseExperiments3 {
public static void main (String[] args) {
String s= "alcaalde";
s=s.replace('a','e');
System.out.println(s);
}
}
答案 0 :(得分:2)
在char数组中更改它:
char[] cs = s.toCharArray();
cs[0] = cs[6]; // For example.
s = new String(cs);
答案 1 :(得分:0)
您也可以在此处使用正则表达式替换:
String s = "alcaalde";
s = s.replaceFirst("(.)(.{6})(.)", "$3$2$1");
@andy给出的答案可能是解决这个问题的最佳答案。但是如果OP需要移动字符串,那么基于正则表达式的方法会让我们处于相当有利的位置。
答案 2 :(得分:0)
试试这段代码:如果你想得到你想要的东西,它就是第7个元素
String s= "alcaalde"; char[] cs = s.toCharArray(); cs[0] = cs[7]; s = new String(cs);