java - 如何在单词中间添加空格

标签 java

大家好,在单词之间添加空格时遇到问题。我需要做的是将英语转换为 Vogon,我已经完成了,但是您还必须在每 5 个字符处添加空格,任何想法如何做到这一点,这是我的代码。

public static void main(String[] args) {
    translateFromEnglish("hello");
    }
    public static boolean detect(String phrase) {
        return false;
    }
    public static String translateFromEnglish(String phrase){
        Scanner scan = new Scanner(System.in);
        phrase = scan.nextLine();
        String NewString = "";
        for (int i = 0; i < phrase.length(); i++) {
            if (phrase.charAt(i) == 'a') {
                NewString += "n";
            }
            if (phrase.charAt(i) == 'b') {
                NewString += "o";
            }
            if (phrase.charAt(i) == 'c') {
                NewString += "p";
            }
            if (phrase.charAt(i) == 'd') {
                NewString += "q";
            }
            if (phrase.charAt(i) == 'e') {
                NewString += "r";
            }
            if (phrase.charAt(i) == 'f') {
                NewString += "s";
            }
            if (phrase.charAt(i) == 'g') {
                NewString += "t";
            }
            if (phrase.charAt(i) == 'h') {
                NewString += "u";
            }
            if (phrase.charAt(i) == 'i') {
                NewString += "v";
            }
            if (phrase.charAt(i) == 'j') {
                NewString += "w";
            }
            if (phrase.charAt(i) == 'k') {
                NewString += "x";
            }
            if (phrase.charAt(i) == 'l') {
                NewString += "y";
            }
            if (phrase.charAt(i) == 'm') {
                NewString += "z";
            }
            if (phrase.charAt(i) == 'n') {
                NewString += "a";
            }
            if (phrase.charAt(i) == 'o') {
                NewString += "b";
            }
            if (phrase.charAt(i) == 'p') {
                NewString += "c";
            }
            if (phrase.charAt(i) == 'q') {
                NewString += "d";
            }
            if (phrase.charAt(i) == 'r') {
                NewString += "e";
            }
            if (phrase.charAt(i) == 's') {
                NewString += "f";
            }
            if (phrase.charAt(i) == 't') {
                NewString += "g";
            }
            if (phrase.charAt(i) == 'u') {
                NewString += "h";
            }
            if (phrase.charAt(i) == 'v') {
                NewString += "i";
            }
            if (phrase.charAt(i) == 'w') {
                NewString += "j";
            }
            if (phrase.charAt(i) == 'x') {
                NewString += "k";
            }
            if (phrase.charAt(i) == 'y') {
                NewString += "l";
            }
            if (phrase.charAt(i) == 'z') {
                NewString += "m";
            }




        }
        System.out.println(NewString);
        return phrase;

            }

控制台 你好,你好吗//用户输入 uryybubjnerlbhqbvat​​//新短语

最佳答案

使用 StringBuilder 效率更高,因为您不需要每次都创建字符串:

    String translatedString = "aaaaabbbbbeeeeecccccdddddfffffgggg";
    int numOfChars = 5;
    StringBuilder vogon = new StringBuilder();
    for (int i = 0; i < (translatedString.length() / numOfChars); i++) {
        vogon.append(translatedString.substring(i * numOfChars, (i * numOfChars) + 5)).append(" ");
    }

    // append any remaining characters
    vogon.append(" ").append(translatedString.substring(translatedString.length()/numOfChars));

    System.out.println(vogon);

关于java - 如何在单词中间添加空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20172466/

相关文章:

java - Android viewpager下RelativeLayout

java - Swing - 删除 JMenu 中除最后一个 JMenuItem 之外的所有内容

java - 将记录从数组插入到 Sqlite 数据库 (Android)

java - 获取两个不同的类实例并比较它们(Java)

java - 在多个项目中使用相同的 hibernate 映射文件

java - 在 Android Studio 上将模块或项目作为库导入

java - 使用小型数据库而不是 maven 中的 settings.xml 来过滤值

java正则表达式匹配摩尔斯电码

java - JTable 列中 Toedter 的 JDateChooser

java - 在Java中应用MapReduce