java - 简单的 Java 堆栈添加

标签 java stack

这是我的代码

package practice;

import java.util.Stack;

public class prac {
    public static void main (String[]args){
        int K = -1;
        do{
            System.out.print("Enter the amount of positive numbers to add up: ");
            K = In.getInt();
        } while(K<0);
        int i;
        Stack sum = new Stack();
        int number;
        int totalsum;
        System.out.println("Enter " + K + " values between 1 and 100, or a 0 to to ignore the last number submitted");
        for(i = 1; i <= K; i++){
            number = In.getInt();
            if(number == 0)
                sum.pop();
            else
            sum.push(number);

            System.out.print(sum);
        }

    }
}

对java非常陌生。只需要知道将堆栈中的所有值加在一起的最简单和最简单的方法即可。 IE。如果堆栈是 [1, 2, 3],答案就是 6

最佳答案

我将声明一个名为total的变量 并在您的 if(number== 0) 语句中:

while(!sum.isEmpty()){
  total += sum.pop();
}

您还应该修改 print 语句以打印 total 的值

关于java - 简单的 Java 堆栈添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35444911/

相关文章:

java - 我可以组合 SWT GridLayout 和 FillLayout 吗

java - Java 中的打印机声明

java - 蓝牙 socket 未连接,无法配对设备

recursion - 这两个递归 ocaml 函数有什么区别?

java - 汉诺塔与 Java 栈

java - 从不同的类写入 jTextArea

java - Tomcat:WebService 响应作为 zip 存档而不是文件

java - processKeyEvent 中 Swing 中的堆栈溢出

python - 在Python中解析文本并返回不匹配括号的列表

python - 使用堆栈的 Hanoi Python 解决方案的递归塔