gpt4 book ai didi

java - Java中简单的奇数和偶数排序与对齐

转载 作者:行者123 更新时间:2023-12-02 04:27:22 26 4
gpt4 key购买 nike

我对 Java 还很陌生,因为我最近刚刚在类(class)中学习了这个主题。我仍然对如何将排序后的输入对齐到指定位置感到困惑。

例如您输入:1,2,3,4,5输出将是所有奇数将在奇数文本/标题下对齐,然后所有偶数将落在偶数标题下。

这是我的代码:

     public static void main(String[] args) {
int num;
String odd="",even="",var, output="";

for (int cntr = 0; cntr < 5; cntr++){
var = JOptionPane.showInputDialog("Input Number: ");
num = Integer.parseInt(var);

if (num % 2 == 1)
odd = odd +"\n"+ String.valueOf(num);
if (num % 2 == 0)
even = even+"\n"+ String.valueOf(num);

output = odd +"\t"+even;

}
System.out.print("Odd\tEven"+ output);

问题是,当您运行它时,输出是这样的,它被排序为顶部数字是奇数,然后底部数字是偶数,但它在奇数标题下对齐。

你能推荐什么?新成员来了。很高兴认识大家!

最佳答案

错误的方法,您正确区分奇数和偶数,但字符串不是按照所述打印它们的方式。你结束于:

odd = "1\n3\n5\n"
even = "2\n4\n"
output = "1\n3\n5\n\t2\n4\n"

也就是说,所有赔率数字(一个接着一个),a 选项卡,然后是偶数。

您需要以更结构化的方式存储数字;最好的选择是两个java.util.ArrayList<Integer> 。获得两个整数列表后,打印它们应该会更容易(对于第一行,打印第一个偶数、制表符,然后打印第一个奇数;不要忘记检查列表的大小是否不同)。

这还有一个额外的好处,如果明天呈现结果的方式发生变化,您无需更改将每个数字放入其列表中的逻辑(将业务逻辑与呈现/UI 解耦) )。

关于java - Java中简单的奇数和偶数排序与对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31977074/

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