java - 通过在 main 方法中接受一个整数来打印一棵树
问题描述
我试图通过在介绍编程类的主要方法中接受一个整数来打印一棵树。如果数字是正数,请接受。如果是否定的,打印一条语句并终止程序。
该程序运行完美。但是,我不允许在命名方法 (printTriangle()) 中打印。
将打印语句仅保留在 main method() 中的代码顺序的逻辑变化是什么?
为了您的方便,我在下面提供了代码和输出。
谢谢!
package triangletest;
import java.util.Scanner;
public class triangletest {
public static void main(String[] args) {
System.out.print("Enter the number of lines: ");
Scanner scanner = new Scanner(System.in);
int input = scanner.nextInt();
scanner.close();
if (input > 0) {
printTriangle(input);
} else {
System.out.print("Number of lines is negative. Exiting");
}
}
static void printTriangle(int input) {
for (int i = 1, triangle = 1; i <= input; i++, triangle += 1) {
for (int space = input; space > i; space--)
System.out.print(" ");
for (int x = 1; x <= triangle; x++)
System.out.print("* ");
System.out.println();
}
}
}
输出:
Enter the number of lines:
5
解决方案
只需将方法中的代码复制printTriangle
到您调用printTriangle
方法的位置即可。
public static void main(String[] args) {
System.out.print("Enter the number of lines: ");
Scanner scanner = new Scanner(System.in);
int input = scanner.nextInt();
scanner.close();
if (input > 0) {
for(int i = 1, triangle = 1; i <= input; i++, triangle += 1)
{
for(int space = input; space > i; space--)
System.out.print(" ");
for(int x = 1; x <= triangle; x++)
System.out.print("* ");
System.out.println();
}
}
else
{
System.out.print("Number of lines is negative. Existing");
}
}
推荐阅读
- hyperledger-fabric - Hyperledger Fabric:如何处理节点证书到期?
- php - PHP 如果一个元素的数量超过一个数量,将元素分成两个或多个页面
- javascript - 我可以用什么代替 document.write
- random - 如何从种子生成随机字节数组?
- excel - Excel 显示来自 http 响应的图像
- python - 在python中为json正文请求添加一个值
- github - 如何修复 Airflow 中的 CloneUserRepository 和 DestroyContainer 等故障?
- flutter - 通过 Draggable&DragTarget 重新排序时如何保持我的小部件状态?
- c++ - 如何使用花括号 {} 初始化类的对象
- javascript - 如何从开始日期和结束日期过滤给定范围的日期?