Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用替换方法只打印一个句子中的一个单词_Java - Fatal编程技术网

Java 使用替换方法只打印一个句子中的一个单词

Java 使用替换方法只打印一个句子中的一个单词,java,Java,作为我的课堂项目,我写了一些代码来接收一个句子,如果它有一个特殊的字符,通过检查它的ASCII码,它会用另一个替换它。但不幸的是,每次它都只替换和显示第一个单词,并删除句子的其余部分。请帮助我,如果有更好的方法,我们将不胜感激 这是我的密码: import java.util.Scanner; public class HelloWorld { public static void main(String[] arg) { Scanner scanner = new Scanner(

作为我的课堂项目,我写了一些代码来接收一个句子,如果它有一个特殊的字符,通过检查它的ASCII码,它会用另一个替换它。但不幸的是,每次它都只替换和显示第一个单词,并删除句子的其余部分。请帮助我,如果有更好的方法,我们将不胜感激

这是我的密码:

import java.util.Scanner;

public class HelloWorld {

public static void main(String[] arg) {
    Scanner scanner = new Scanner(System.in);
    String s = scanner.next();
    if (s.contains("\u0626")) {
        String result = s.replaceAll("\u0626", "\u0628");
        System.out.println(result);
    }


}


}

您正在调用Scanner.next(),它返回一个令牌。你的意思可能是
nextLine()
?请注意,如果您完全删除
if
语句,只打印
s
,您将得到相同的行为。此外,除非您尝试使用正则表达式,否则您应该使用
replace
,而不是
replaceAll
,非常感谢先生。正如你说的,我把它改成了nextLine(),它就像一个符咒。我添加if是因为我想添加更多的字符来检查。如果我想检查更多的项目,那么最好使用更多if-else还是使用| | for contains@Jonskeetwe如果我想检查更多的项目,最好是使用更多的if-else还是使用| | for contains@赫尔伍德