替换字符串中的字符的有效方法(java)?

我正在编写一个小型JAVA程序,该程序:

  • 将文本作为字符串
  • 需要2个字符数组

我试图做的事情听起来像是“查找并替换”,但是并不相同,因此我认为清除它很重要。

无论如何,我想获取此文本,查找第一个数组中的任何字符是否与文本中的字符匹配,如果是,则将其替换为第二个字符数组中的匹配字符(根据索引)。

我将举一个例子来说明:假设我的文本(字符串)是:“ java很棒!”;我有2个数组(char []):“ absm”和“!@ * $”。

理想的结果是将“ a”更改为“!” ,“ b”到“ @”,依此类推..表示结果文本将是:

我考虑过循环文本,但后来发现效率不高。

(可以使用 / String类)

回答:

StringBuilder sb = new StringBuilder(text);

for(int i = 0; i<text.length(); i ++)

{

for (int j = 0; j < firstCharArray.length;j++)

{

if (sb.charAt(i) == firstCharArray[j])

{

sb.setCharAt(i, secondCharArray[j]);

break;

}

}

}

这种方法是有效的,因为它使用StringBuilder来更改字符(如果使用字符串,则由于它们是不可变的,因此每次都必须创建一个新字符。)而且,它还可以最大限度地减少通过次数(1次通过文本字符串和n通过第一个数组,其中n

= text.length())

以上是 替换字符串中的字符的有效方法(java)? 的全部内容, 来源链接: utcz.com/qa/412826.html

回到顶部