如何在Java中将输出格式化为表?
我试图为成绩报告做一个表格,它应该有5列,分别是班级、描述、单位、成绩和成绩点。 但是,我无法使输出彼此对齐。 我只是简单地使用“\t”。 有没有一种方法可以使输出在Java中成为一个表如何在Java中将输出格式化为表?,java,gpa,Java,Gpa,我试图为成绩报告做一个表格,它应该有5列,分别是班级、描述、单位、成绩和成绩点。 但是,我无法使输出彼此对齐。 我只是简单地使用“\t”。 有没有一种方法可以使输出在Java中成为一个表 import java.util.*; public class Project1_Trial2 { public static void main(String args[]) { Scanner scanner = new Scanner(System.in);
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]);
}
}
}
import java.util.*;
公共类项目1\u试验2{
公共静态void main(字符串参数[])
{
扫描仪=新的扫描仪(System.in);
//输入术语
System.out.println(“请输入成绩计算的期限(例如2015年秋季):”;
字符串项=scanner.nextLine();
//输入学生注册的课程数
System.out.println(“请输入您注册的课程数”+学期+“:”;
int numberofcourses=scanner.nextInt();
//声明
String ClassName[]=新字符串[numberofcourses];
字符串说明[]=新字符串[numberofcourses];
字符串等级[]=新字符串[numberofcourses];
整数单位[]=新整数[课程数];
//类别编号、说明、单位、等级、等级点的数组
//在此,输入类别编号、说明、单位和等级
for(int i=0;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()
这样可以填充字符串,并在printf()
函数中使用String.format()
来填充整数和空格……您可以根据自己的喜好调整填充
这是一种更有效的方法,而不是经常使用和的选项卡