为了给标题提供一些上下文,让我们说我有一个INT数组。所以,例如(1,2,3,4,5)
数组中的每个数字表示字符串中的char。因此,如果字符串是hello,那么array [3]将表示" l"。
从字符串中删除char的最有效或最简单的方法是什么,替换char然后将其添加回字符串中?
所以使用上面的例子我可以改变" l"到" d",将它添加回字符串,这样我的最后一个字符串是" hedlo"。
这是我的代码的一部分:
用于max的方法:
public static int getMax(int[] inputArray){
int maxValue = inputArray[0];
for(int i=1;i < inputArray.length;i++){
if(inputArray[i] > maxValue){
maxValue = inputArray[i];
}
}
return maxValue;
}
这里是使用数组中max值的代码,作为字符串结果中的位置进行编辑。要编辑的字符应替换为&#34; m&#34;在实际案例中
int max = getMax(array);
results.setCharAt(max, 'm');
String result = results.toString();
答案 0 :(得分:1)
是的,它可以轻松完成。下面我有一些来自https://stackoverflow.com/a/4576556/9354346
的代码StringBuilder str = new StringBuilder("hello");
str.setCharAt(2, 'd');
String result = str.toString();
答案 1 :(得分:0)
不知道你为什么要这样做,我不确定究竟要推荐什么,但这里需要考虑一下。 ASCII字符具有与之关联的数值。 Table.
如果将int转换为char,它会将其转换为该值。好吧,
char c = (char) 97;
会评估为'a'。如果你想让'a'从1开始,你可以在所有东西上加96。
要进行转换,您可以将表中的差异添加到int中。所以从'a'到'd',添加3.
编辑:
我回答了这个问题,假设您正在更改表示字符串的整数数组。重读这个问题,我不确定你在做什么!如果需要将字符串的字符更改为其他字符,则可以使用子字符串函数在更改之前获取字符,并在更改之后将新字符放在中间。
String x = "Hello";
x = x.substring(0,2) + 'd' + x.substring(3);
这使得x说“Hedlo。”