java代码解析?重在结果上面?

来源:百度知道 编辑:UC知道 时间:2024/06/27 03:20:56
生成20 个 0到 50之间的随机整数存放在一个数组中,将数组元素依次取出
如果是奇数则将该数进栈,如果是偶数且栈不为空,则将栈顶元素出栈。如栈为
空,将该数忽略。最后,统计堆栈中的数字的个数,并将这些数输出至屏幕。
package cn.kfu.two;

import java.util.Stack;

public class TextStack {

public static void main(String[] args) {
int i=0;
int arr[]=new int[20];
System.out.println("生成的20个随机数为:");
for(;i<20;i++){
arr[i]=(int)(Math.random()*50);
System.out.print(arr[i]);
System.out.print(" ");
}
System.out.println();
Stack<Integer> s =new Stack<Integer>();
for( i=0;i<20;i++)
{
if(arr[i]%2!=0)
{
s.push(arr[i]);

}
else
{
if(!s.empty())
{
s.pop();
}
}
}
System.out.println("经过操作后,堆栈中的元素个数");
System.out.println(s.size());
System.out.println("元素为");
for(int temp : s

将数组元素依次取出
如果是奇数则将该数进栈,如果是偶数且栈不为空,则将栈顶元素出栈。如栈为
空,将该数忽略。最后,统计堆栈中的数字的个数

自己看看自己写的,多读几遍。你自己要求随机的……一样的话程序不就错了么?