gpt4 book ai didi

java - 我怎样才能改进/减少这段Java代码

转载 作者:行者123 更新时间:2023-12-01 09:59:25 24 4
gpt4 key购买 nike

我有一个任务并且完成了它:目标是创建一个带有 2 个参数的方法:1. 要计数的数字,以及 2. 总结果有多少个字符/数字。

结果:假设“number”是 5,所以它会计数:01234543210但它也会在两侧添加空格来完成第二个要求“largo”,所以如果 long 是 15,结果将是"01234543210 "每边有 2 个空格。所以我写了这段代码,但其他程序员告诉我他用了我一半的代码。

代码中有很多假设,例如 largo > number 或者如果 number 是奇数,则 largo 也是奇数。

所以我的问题是,这段代码可以减少(重构吗?)[我的 java 路径只有一个月的时间,所以要努力,但要理解 XD)

public static void counter(int number, int largo) {
int numberFull=(number*2)+1;
int spaceFull=largo-numberFull;
int space=spaceFull/2;
for (int a=1;a<=space;++a)
{System.out.print(" ");}
for (int x=0;x<=number;x++)
{System.out.print(x);}
for (int y=number-1;y>=0;y--)
{System.out.print(y);}
for (int b=1;b<=space;++b)
{System.out.print(" ");}
}

最佳答案

试试这个。

public static void counter(int number, int largo) {
int space = (largo - (number * 2) - 1) / 2;
String left = "0123456789".substring(0, number);
String right = new StringBuilder(left).reverse().toString();
String spaces = space > 0 ? String.format("%" + space + "s", "") : "";
System.out.print(spaces + left + number + right + spaces);
}

数字必须介于 0 到 9 之间。

关于java - 我怎样才能改进/减少这段Java代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36935355/

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