Java 格式化输出问题

标签 java string formatting

public static void main(String[] args) {
    Formatter fmt = new Formatter();
    String russianAlphabet = " абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
    String text = "c точки зрения банальной эрудиции, каждый индивидуум вышедший из сферы эмбрионального развития" +
            "не способен патологически идеализировать метаморфические абстракции";

    //printing text String
    for(int i = 0; i < text.length(); i++){
     fmt.format("%c ",text.charAt(i));
     System.out.print(fmt);
    }
    System.out.println();

    //searching a position index in alphabet
    for(int i = 0; i < text.length(); i++){
     fmt.format("%02d ",russianAlphabet.indexOf(text.charAt(i)));
     System.out.print(fmt);
    }
}

我只需要两笔画的紧凑输出,一个在另一个下。第一个显示按空格分割的字符,第二个显示字符在字母表中的位置。格式输出有什么问题?它返回大量随机文本。 (非常抱歉英语不好)。

最佳答案

将程序文件保存为 UTF-8。尝试下面的代码。

我认为您在这里打印的内容不正确。

System.out.print(fmt);

另请注意,在您的程序中您输入了一些字符
作为拉丁语而不是西里尔语(例如第一个 c 是拉丁语)。

    public class Test33 {

        public static void main(String[] args) {

            String russianAlphabet = " абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
            String text = "с точки зрения банальной эрудиции, каждый индивидуум вышедший из сферы эмбрионального развития " +
                    "не способен патологически идеализировать метаморфические абстракции";

            for(int i = 0; i < text.length(); i++){
                System.out.print(String.format("%3c | ",text.charAt(i)));
            }
            System.out.println();

            for(int i = 0; i < text.length(); i++){
                System.out.print(String.format("%3d | ",russianAlphabet.indexOf(text.charAt(i))));
            }

            System.out.println();

        }

    }

输出:

  с |     |   т |   о |   ч |   к |   и |     |   з |   р |   е |   н |   и |   я |     |   б |   а |   н |   а |   л |   ь |   н |   о |   й |     |   э |   р |   у |   д |   и |   ц |   и |   и |   , |     |   к |   а |   ж |   д |   ы |   й |     |   и |   н |   д |   и |   в |   и |   д |   у |   у |   м |     |   в |   ы |   ш |   е |   д |   ш |   и |   й |     |   и |   з |     |   с |   ф |   е |   р |   ы |     |   э |   м |   б |   р |   и |   о |   н |   а |   л |   ь |   н |   о |   г |   о |     |   р |   а |   з |   в |   и |   т |   и |   я |     |   н |   е |     |   с |   п |   о |   с |   о |   б |   е |   н |     |   п |   а |   т |   о |   л |   о |   г |   и |   ч |   е |   с |   к |   и |     |   и |   д |   е |   а |   л |   и |   з |   и |   р |   о |   в |   а |   т |   ь |     |   м |   е |   т |   а |   м |   о |   р |   ф |   и |   ч |   е |   с |   к |   и |   е |     |   а |   б |   с |   т |   р |   а |   к |   ц |   и |   и | 
 19 |   0 |  20 |  16 |  25 |  12 |  10 |   0 |   9 |  18 |   6 |  15 |  10 |  33 |   0 |   2 |   1 |  15 |   1 |  13 |  30 |  15 |  16 |  11 |   0 |  31 |  18 |  21 |   5 |  10 |  24 |  10 |  10 |  -1 |   0 |  12 |   1 |   8 |   5 |  29 |  11 |   0 |  10 |  15 |   5 |  10 |   3 |  10 |   5 |  21 |  21 |  14 |   0 |   3 |  29 |  26 |   6 |   5 |  26 |  10 |  11 |   0 |  10 |   9 |   0 |  19 |  22 |   6 |  18 |  29 |   0 |  31 |  14 |   2 |  18 |  10 |  16 |  15 |   1 |  13 |  30 |  15 |  16 |   4 |  16 |   0 |  18 |   1 |   9 |   3 |  10 |  20 |  10 |  33 |   0 |  15 |   6 |   0 |  19 |  17 |  16 |  19 |  16 |   2 |   6 |  15 |   0 |  17 |   1 |  20 |  16 |  13 |  16 |   4 |  10 |  25 |   6 |  19 |  12 |  10 |   0 |  10 |   5 |   6 |   1 |  13 |  10 |   9 |  10 |  18 |  16 |   3 |   1 |  20 |  30 |   0 |  14 |   6 |  20 |   1 |  14 |  16 |  18 |  22 |  10 |  25 |   6 |  19 |  12 |  10 |   6 |   0 |   1 |   2 |  19 |  20 |  18 |   1 |  12 |  24 |  10 |  10 | 

关于Java 格式化输出问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20776123/

相关文章:

java - 使用 jason.simple 将用户定义的数据类型转换为 JSON 对象类型

java - Java 中知道一个对象是否是其他对象的子类

java - 我如何获取字节数组的第一个 "n"元素并将它们直接转换为字符串?

string - Google Apps脚本-使用.replace方法删除空格对我不起作用

css - 如何获得均匀间隔的列表项?

java - 如何在左侧用零填充整数?

java - 尝试从 java 使用 smtp 服务器发送邮件时出现此错误!如何解决这个问题

java - 用于 C++ 应用程序的 Java GUI - 这是一个好的设计吗?

android - 无法在android中对字符串数组进行排序,Arrays.sort导致致命异常

字符串的 Java 输出格式