gpt4 book ai didi

java - 如何操作给定索引内的字符串? java

转载 作者:行者123 更新时间:2023-12-01 18:17:58 24 4
gpt4 key购买 nike

嗨,所以我尝试用相应的罗马数字替换字符串中的数字,并且该方法应该只在给定的 startPos 和 endPos 之间操作字符串。

例如,如果字符串是: “H3ll0,wh4t 15 ar3 you do1n9” 且 startPos = 1,endPos = 14

它应该打印出:“HIIIll0,whIVt IV ar3 you do1n9”

这是我的方法:

 public void convertToRoman(int startPos, int endPos){   

for (int i = startPos-1; i < endPos; i++) {
if (romanNum.contains("1")) {
romanNum = romanNum.replace("1", "I");
}
if (romanNum.contains("2")) {
romanNum = romanNum.replace("2", "II");
}
if (romanNum.contains("3")) {
romanNum = romanNum.replace("3", "III");
}
if (romanNum.contains("4")) {
romanNum = romanNum.replace("4", "IV");
}
if (romanNum.contains("5")) {
romanNum = romanNum.replace("5", "V");
}
if (romanNum.contains("6")) {
romanNum = romanNum.replace("6", "VI");
}
if (romanNum.contains("7")) {
romanNum = romanNum.replace("7", "VII");
}
if (romanNum.contains("8")) {
romanNum = romanNum.replace("8", "VIII");
}
if (romanNum.contains("9")) {
romanNum = romanNum.replace("9", "IX");
}
}

System.out.print(romanNum);

}

***顺便说一句,现在它正在操作整个字符串,无论给定的索引如何

最佳答案

下一个方法会很好。

char[] chars = romanNum.toCharArray();
String s = "";
for (int i = startPos-1; i < endPos; i++) {
if (chars[i] == '1') {
s += "I";
}
if (chars[i] == '2') {
s += "II";
}
...
else {
s += chars[i]
}
}
System.out.print(s);

关于java - 如何操作给定索引内的字符串? java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60330452/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com