我正在尝试将字符串中的特定字符“8”替换为“2”。我认为我已经正确设置了所有内容,当我在网上查找示例时,这看起来应该是这样。当我打印字符串时,它就像我输入的那样。要运行它,请使用“80802”或一些类似的输入对其进行测试。谢谢!
import java.util.Scanner;
class PhoneNumber {
public static void main(String[] args) {
String number = null;
Scanner scan = new Scanner(System.in);
// Prompt the user for a telephone number
System.out.print("Enter your telephone number: ");
// Input the user's name
number = scan.nextLine();
// Replace the relevant letters with numbers
number.replace('8', '2');
System.out.println("Your number is: " + number );
}
}
最佳答案
一个常见的错误......你想要:
number = number.replace('8', '2');
String.replace()不会更改字符串,因为 Strings是不可变的(它们不能改变)。相反,此类方法返回带有计算值的新字符串。
关于java - 字符串替换函数无法正确替换字符 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6722110/