在执行程序后,为什么我的输出有所不同?

问题描述 投票:0回答:1
我是Java的新手,她正试图学习简单的数据结构,并在BlueJ中编写了一个程序,以弹出堆栈。但是,在编译和执行程序后,每次输出都不同。

代码如下:

class popstack { static int arr[]={31,45,64,100}; public static void main() { int top=0; int i=top; System.out.println(arr[top]); while(i<3){ arr[i]=arr[i+1]; arr[i+1]=0; i=i+1; } for(int j=0;j<4;j++) { System.out.print(arr[j]+","); } } }

指望输出:
第一执行:

31 45,64,100,0,

执行:

31 45,64,100,0,

输出:
第一执行:

31 45,64,100,0,

执行:

45 64,100,0,0,

由于我总是初始化数组吗?
    

出于某种原因,您的IDE不会第二次启动新执行,而是为先前执行的JVM再次调用Main()方法。由于每个执行都会修改数组的值
java stack bluej
1个回答
0
投票
您正在看到第二次从第一个执行中修改的值。


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.