Lucas Dana Ответов: 0

Исключение throw, если стек пуст


Good morning,
I would like to know how I can check if a stack is empty and in that case throw an exception. The idea is to have a main class, and other classes that do the tests.

Thank you,
Luke


Что я уже пробовал:

Класса Stack

    public class Stacks{

    public static int max(Stackstack) throws isEmpty {
        int max = (int) Integer.MIN_VALUE;
          if (stack.isEmpty()) {
            throw new isEmpty("The stack is empty");
          }
         else {
            return max;
          }
        } 
}


Класс test1
public class Test1{

    public static void main(String[] args) throws IncorrectOperation {

        Stack stack= new LinkedStack();

        try {
            System.out.println(stack);
            System.out.println(Stacks.max(stack));
        } catch (IncorrectOperation e) {
            e.printStackTrace();
        }

    }

}


Класс LinkedStack
public class LinkedStack implements Stack{

    private Node top;

    public LinkedStack() {
        top= null;
    }

    public void push(Object element) {
        Node node = new Node(element);
            node.setLink(top);
        top= node;
    }

    public void pop() throws BottomOverflow{
        if (isEmpty()) {
            throw new BottomOverflow("Impossible pop");
        }
        top= top.getLink();
    }

    public Object top() throws BottomOverflow{
        if (isEmpty()) {
            throw new BottomOverflow("Impossible to consult the top");
        }
        return top.getElement();
    }

    public boolean isEmpty() {

        return (top== null);
    }
}

Richard MacCutchan

В чем же проблема?

Lucas Dana

Как я могу создать исключение в Java, когда он проверяет, пуст ли стек, а если нет, то покажите мне элементы этого стека и самое большое число.?

Richard MacCutchan

Вы уже делаете это в своем коде. Так в чем же именно заключается проблема?

Lucas Dana

public static int max(Stack stack) выбрасывает некорректную операцию{


}

}

Lucas Dana

Какой код я должен вставить, чтобы он вызывал исключение в случае, если стек пуст, а в другом тесте возвращал элементы стека и целое число с максимальным значением?

wseng

Пожалуйста, помогите нам помочь вам, вставив stacktrace.

Lucas Dana

стек.LinkedStack@15db9742
Информация: стек пуст
-2147483648

0 Ответов