java - 如何接受输入并使程序打印出新行上的每个字母,同时使遇到的每个空格打印出 "<space>"?

标签 java java.util.scanner

import java.util.Scanner;

public class TwoDotSevenNumbaTwo {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String input;
        int num1, num2, leng;
        char word;
        Scanner inputscan = new Scanner(System.in);
        System.out.println("Give me some love baby");
        input = inputscan.nextLine();
        leng = input.length();
        num1 = 0;
        num2 = 1;

        while (num1 < leng) {
            input = input.replaceAll(" ", "<space>");
            System.out.println(input.charAt(num1));

            num1++;
        }
    }
}

我似乎不知道如何获取 <space>在一条线上。我知道我做不到,因为它是一个字符,但我找不到解决方法。

最佳答案

你可以这样做

for(int i = 0; i < leng; ++i) {
   char x = input.charAt(i);
   System.out.println(x == ' ' ? "<space>" : x);
}

关于java - 如何接受输入并使程序打印出新行上的每个字母,同时使遇到的每个空格打印出 "<space>"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24128384/

相关文章:

Java - 在扫描器中使用多个定界符

java - 比较两个文件并确定哪些行不同

java - 如何将 Solr max 函数应用于所有字段

java - Android 按钮只能在角落点击

Java Socket 同步行为

java - Java 新手,想知道 Scanner 读取的 if 语句和字符串

java - 扫描仪输入数据类型

java - Map.of 与 EnumMap 用于具有枚举键的不可变映射

java - 从套接字读取和写入不会产生输出?

java - 从字符串数组中解析 int 时出现 ArrayIndexOutOfBound