-1

更多硬件问题:DI 需要对齐平均值。我试过了,但是学生名字的长度不同,并且printf在一定程度上使用了作品,但是对于比其他名字更长的名字,他们没有排队。我不知道如何让他们排队

System.out.println("You Chose Student Average\n");
                int avg;

                while(inFile.hasNext())
                {
                    name = inFile.next();
                    test1 = inFile.nextInt();
                    test2 = inFile.nextInt();

                    avg = (test1 + test2)/2;

                    System.out.print(name);
                    System.out.printf("%14d\n", avg);
                }
                System.out.print("\n");

然后这里是平均输出:

Robert            76
Joel            57
Alice            96
Jasmine            84
Larry            55
Elizabeth            82
Frank            70
Christine            28
Alex            26
Ariel            82
Luis            71
Nicole            64
Mitch            92
Randy            87
Tammy            87
Sarah            74
Samuel            73
Lauren            59
Deanna            98
Mathew            93
Justin            72
Beth            95
Rebecca            84
Paul            54
Lucy            45

做什么?

4

2 回答 2

0

您可以将字符串格式用于整数之外。http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Formatter.html#syntax

但是,除非您有明确定义的最大名称长度,否则我认为您能做的最好的事情就是检查最大名称长度,然后在所有其他名称中添加空格,直到它们匹配为止。

于 2013-04-23T23:01:23.887 回答
0

尝试使用“\t”。喜欢:

System.out.println("Name: \t" + average);

编辑

由于您正在使用printf尝试:

System.out.printf("%14d \t \n", avg);
于 2013-04-23T23:05:16.630 回答