gpt4 book ai didi

java - 使用两个类文件的用户定义的 Java 乘法表

转载 作者:行者123 更新时间:2023-12-01 13:46:50 26 4
gpt4 key购买 nike

我需要创建两个类文件,用于根据用户指定的大小(<=15)创建乘法表,并使用以下内容进行分配。我当时正值感恩节假期,无法检索创建这两个类的说明,因此我编写了一个程序来提示用户,现在我不确定如何将其分成两个类。一类是Table,它指定表大小,另一类是Table App。以下是我无法访问的说明:

允许的最小 table 尺寸是 2x2 table ;最大的是一张15x15的 table 。行数和列数将始终相同(即,程序不会创建 5x10 表格)。它不允许我在此处发布图片,但表格沿列标题从 1 到 15,列标题由破折号分隔。然后行标题从 1 到 15 时用破折号分隔

表格每个单元格中的数字是其上方的列标题与其左侧的行标签的乘积。所有数字都应该右对齐。

该表应由名为 Table 的类生成。该类可以包含您认为适当创建的任意多个方法,但必须至少包含以下内容:

(构造函数)——采用一个输入参数:表的大小。有效值范围为 2 到 15(含)。print---无输入参数,无返回值。这是显示乘法表的方法。printLine---采用一个输入参数:以行形式打印的破折号的数量。这是一个辅助方法,您将在 print 方法中使用它。它用于在表格中创建三条水平线。

在没有说明的情况下,我编写了代码,根据用户输入使表格的大小和宽度可变,并且没有使其包含 2 到 15。我对 Java 仍然很陌生,我对此感到非常自豪我写的代码,直到我能够上网并查看说明。这是我编写的代码,它创建了表格,但我无法像图片一样完美地获得破折号,并且我没有创建两个类文件..我只是将其写在一个类文件中。有人可以帮我吗?

import java.util.Scanner;

public class Table {
private static Scanner s;

public static void main(String[] args)
{
s = new Scanner(System.in);

System.out.print("How big is the table: ");

int size = s.nextInt();
int formatStringLength = Integer.toString(size*size).length();
int axesFormatStringLength = Integer.toString(size).length();
String formatString = String.format("%%%ds", formatStringLength);
String axesFormatString = String.format("%%%ds",
axesFormatStringLength);

System.out.println();
System.out.println();

System.out.print("* | ");

for (int i = 1; i <= size; i++)
{
//System.out.print(i + " ");
System.out.printf(formatString + " ", i);
}

System.out.print("\n----");

//for (int i = 1; i <= size; i++)
for (int i = 1; i <= size*formatStringLength; i++)
{
System.out.print("--");
}

System.out.println();

for (int i = 1; i <= size; i++) {
System.out.printf(axesFormatString + " | ", i);

for (int j = 1; j <= size; j++) {

System.out.printf(formatString + " ", i * j);
}

System.out.println();
}
}
}

最佳答案

你应该真正遵循指示并上两个类。您需要创建一个名为 Table 的类,然后创建一个可运行的应用程序类来运行该 Table

表.java

public class Table{
private int size;

// constructor
public Table(int size){
this.size = size;
}

public int getSize(){
return size;
}

public void print(){
// do some printing

printline(20);

// do some more printing

printline(20);

// do some more printing

printline(20);

// do some more printing

}

public void printLine(int dashes){
// loop to print number of dashes
}
}

TestTable.java 示例运行

public class TextTable{
public static void main(String[] args){
// create an instance of Table
Table table = new Table(5);

// print table
table.print();
}
}

这是按照说明编写的代码的基本大纲/模板。

关于java - 使用两个类文件的用户定义的 Java 乘法表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20305241/

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