作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试为成绩报告制作一个表格,该表格应该有 5 列,分别是类(class)、描述、单位、成绩和成绩点。但是,我无法使输出相互对齐。我只是简单地使用“\t”。有没有办法在 Java 中将输出制作为表格?
import java.util.*;
public class Project1_Trial2 {
public static void main(String args[])
{
Scanner scanner = new Scanner(System.in);
//Input the term
System.out.println("Please enter the term of your grade calculation (for example, Fall 2015): ");
String term = scanner.nextLine();
//Input the number of courses that the student is enrolled in
System.out.println("Please enter the number of courses that you are enrolled in "+term+": ");
int numberofcourses = scanner.nextInt();
//Declaration
String ClassName[] = new String[numberofcourses];
String Description[] = new String[numberofcourses];
String Grade[] = new String[numberofcourses];
int Units[] = new int[numberofcourses];
//Arrays for class number, description, units, grade, grades point
//Here, input class number, description, units, and grades
for(int i = 0; i < numberofcourses; i++)
{
scanner.nextLine();
System.out.println("Please enter your #"+(i+1)+" class name: ");
ClassName[i] = scanner.nextLine();
System.out.println("Please enter your #"+(i+1)+" class description: ");
Description[i] = scanner.nextLine();
System.out.println("Please enter your #"+(i+1)+" class units: ");
Units [i] = scanner.nextInt();
System.out.println("Please enter your #"+(i+1)+" class grade: ");
Grade[i] = scanner.nextLine();
}
System.out.println("Class Grades - "+term+" Term");
System.out.println("Office Grades");
System.out.println("Class \t \t Description \t \t Units \t \t Grade \t \t Grade Points");
for(int i = 0; i < numberofcourses; i++)
{
System.out.println(ClassName[i]+"\t \t"+Description[i]+"\t \t"+Units[i]+"\t \t"+Grade[i]);
}
}
}
最佳答案
有多种方法可以对齐输出,以便它们均匀对齐......一种方法是替换您放置的位置:
System.out.println(ClassName[i]+"\t \t"+Description[i]+"\t \t"+Units[i]+"\t \t"+Grade[i]);
与:
System.out.printf("%-15s %-15s %-15s ",ClassName[i],Description[i],String.format("%5d", Units[i]),Grade[i]);
不要使用System.out.println()
,而是使用System.out.printf()
,这样您就可以填充字符串并使用String.format ()
在 printf()
函数中用空格填充整数...您可以将我的填充调整为您认为合适的任何内容这是比不断使用选项卡更有效的方法
关于java - 如何在 Java 中将输出格式化为表格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56694377/
我是一名优秀的程序员,十分优秀!