gpt4 book ai didi

java - 如何在 Java 中将输出格式化为表格?

转载 作者:行者123 更新时间:2023-11-30 05:35:37 33 4
gpt4 key购买 nike

我正在尝试为成绩报告制作一个表格,该表格应该有 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/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com