Java 如何替换数组中字符串索引的值
我正在做一个关于图灵机器的项目,我遇到了一个问题,关于如何替换字符串某个索引中的字符 示例:如果我在初始磁带中输入: 栈溢出 然后在输入区域中编码,如 写1 输出应该是 1堆栈溢出 但遗憾的是,我的代码的输出是 11111111111 我试图摆脱循环,因为我知道我的循环是个问题,但我应该怎么做呢 这是我的密码 runButton.addActionListener(新ActionListener(){ 已执行的公共无效行动(行动事件行动){Java 如何替换数组中字符串索引的值,java,arrays,for-loop,split,Java,Arrays,For Loop,Split,我正在做一个关于图灵机器的项目,我遇到了一个问题,关于如何替换字符串某个索引中的字符 示例:如果我在初始磁带中输入: 栈溢出 然后在输入区域中编码,如 写1 输出应该是 1堆栈溢出 但遗憾的是,我的代码的输出是 11111111111 我试图摆脱循环,因为我知道我的循环是个问题,但我应该怎么做呢 这是我的密码 runButton.addActionListener(新ActionListener(){ 已执行的公共无效行动(行动事件行动){ String[]iniTape=iTapeArea.g
String[]iniTape=iTapeArea.getText().split(“”);
字符串[]输入=inputArea.getText().split(“\n”);
对于(int i=0;i无需尝试此方法。您可以使用
String str = "stackoverflow";
System.out.println(str.replace("" + str.charAt(0), "1"));
输出:
1tackoverflow
使用String类的replaceAll()方法,如下所示
yourString.replaceAll("" + yourString.charAt(index), "1")//index is your index at which you want to replace
“”+相当于执行String.valueOf(yourString.charAt(index))
这可能会奏效
String[]iniTape=iTapeArea.getText().split(“”);
字符串sub=null;
字符串temp=null;
字符串[]输入=inputArea.getText().split(“\n”);
//“测试1\n测试2\n测试3”。拆分(“\n”);
对于(inti=0;i我使用String类的replaceFirst(String,String)函数
public static void main(String[] args) {
String s = "stackoverflow";
s = s.replaceFirst("" + s.charAt(0), "1");
System.out.println(s);
}
如果要用该数字替换字符串的给定特定索引,可以执行以下操作
static String str = "stackoverflow";
public static String replaceCharsAt(int ... indices) {
for (int index : indicies) {
str = str.replace(str.charAt(i), i+1);
}
return str;
}
是的,先生,它可以很简单,但例如,如果我写1写2写3,输出应该是123ckoverflow@marky您是这样输入的?“写入1写入2写入3”或“12写入3”???
public static void main(String[] args) {
String s = "stackoverflow";
s = s.replaceFirst("" + s.charAt(0), "1");
System.out.println(s);
}
static String str = "stackoverflow";
public static String replaceCharsAt(int ... indices) {
for (int index : indicies) {
str = str.replace(str.charAt(i), i+1);
}
return str;
}