gpt4 book ai didi

java - 如何让我的程序只运行第二个输出?

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

这是我的代码:

import java.util.Scanner;
public class Chapter10_NextGeneration {
public static void main(String[]args) {
Scanner sc=new Scanner(System.in);
System.out.println("Type in your cell positions(ie 8,A,D,D,A,D,D,A,A,2 - NO SPACES & CASE SENSITIVE): ");
String positions_str=sc.nextLine();
sc.close();
String[] cells=positions_str.split(",");
String[] next_generation=new String[cells.length-2];x
for(int j=0; j < Integer.parseInt(cells[cells.length-1]); j++) {
for(int i=1;i<cells.length-1;i++) {
if(i-1<1) {
if(cells[i+1].equals("D")) {
next_generation[i-1]="D";
}
else {
next_generation[i-1]="A";
}
}
else if(i+1==cells.length-1) {
if(cells[i-1].equals("D")) {
next_generation[i-1]="D";
}
else {
next_generation[i-1]="A";
}
}
else if((cells[i-1].equals("A") && cells[i+1].equals("D")) || (cells[i-1].equals("D") && cells[i+1].equals("A"))) {
next_generation[i - 1]="A";
}
else if((cells[i-1].equals("A") && cells[i+1].equals("A")) || (cells[i-1].equals("D") && cells[i+1].equals("D"))) {
next_generation[i - 1]="D";
}
}
for (int i = 0; i < next_generation.length; i++) {
cells[i+1]=next_generation[i];
System.out.print(next_generation[i]);
}
}
}

}

我无法让我的程序仅打印最终输出。当我的输入是 8,A,D,D,A,D,D,A,A,2 时,输出应该是 AADADDA,但程序打印DAADAAAAAAAADADDA。输入末尾的 2 运行程序两次,但我想要的只是第二次运行时的输出。如何使程序在第一次运行我的输入时不打印?

这是一个视觉效果: Description

我想要的只是以蓝色突出显示的部分。我不想要未突出显示的部分。我该怎么办?

最佳答案

打印的循环位于运行两次的 for 循环内。所以它会打印第一次和第二次。您需要将打印语句移出嵌套循环,并在所有其他循环完成后运行循环来打印值

关于java - 如何让我的程序只运行第二个输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60590982/

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