Логин:   Пароль:




Новости
Рассылки
Форум
Поиск


Java
- Апплеты
- Вопрос-ответ
- Классы
- Примеры
- Руководства
- Статьи
- IDE
- Словарь терминов
- Скачать

Мобильная Java
- Игры
- Примеры
- Статьи
- WAP, WML и пр.

JavaScript
- Вопрос-ответ
- Примеры
- Статьи

Веб-мастеринг
- HTML
- CSS
- SSI

Разминка для ума
Проекты
Книги
Ссылки
Программы
Юмор :)




Rambler's Top100

Java: КлассыКласс Stack

Класс Stack

java.util

public class Stack
extends Vector
implements Cloneable, Collection, List, Serializable

Stack — подкласс класса Vector, который реализует простой механизм типа "последний вошел - первый вышел" (LIFO). В дополнение к стандартным методам своего родительского класса, Stack предлагает наличие описанных ниже методов.

Конструкторы

Stack()
           Создаёт пустой стек.


Методы

boolean

empty()

           Служит для проверки стека на наличие элементов — он возвращает true, если стек пуст.
Object

peek()

           Возвращает верхний элемент, не удаляя его из стека.
Object

pop()

           Извлекает верхний элемент удаляя его из стека.
Object

push(Object item)

           Помещает элемент в вершину стека.
int

search(Object o)

           Метод ищет заданный элемент в стеке, возвращая количество операций pop, которые требуются для того чтобы перевести искомый элемент в вершину стека. Если заданный элемент в стеке отсутствует, этот метод возвращает -1.

Пример использования:

Ниже приведен пример программы, которая создает стек, заносит в него несколько объектов типа Integer, а затем извлекает их.


import java.util.Stack;
import java.util.EmptyStackException; 
class StackExample
{
 static void showpush(Stack st, int a)
 { 
  st.push(new Integer(a));
  System.out.println("push(" + a + ")");
  System.out.println("stack: " + st);
 }
 static void showpop(Stack st)
 { 
  System.out.print("pop -> ");
  Integer a = (Integer) st.pop();
  System.out.println(a);
  System.out.println("stack: " + st);
 }
 public static void main(String args[])
 { 
  Stack st = new Stack();
  System.out.println("stack: " + st);
  showpush(st, 42);
  showpush(st, 66);
  showpush(st, 99);
  showpop(st);
  showpop(st);
  showpop(st);
  try
  {
   showpop(st);
  } 
  catch (EmptyStackException e)
  { 
   System.out.println("empty stack");
  }
 }
}

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

stack: []
push(42)
stack: [42]
push(66)
stack: [42, 66]
push(99)
stack: [42, 66, 99]
pop -> 99
stack: [42, 66]
pop -> 66
stack: [42]
pop -> 42
stack: []
pop -> empty stack


Генри Бекет
"Java SOAP для профессионалов"
Подробнее>>
Заказать>>


Кей С. Хорстманн, Гари Корнелл
"Java 2. Библиотека профессионала. Том 1. Основы"
Подробнее>>
Заказать>>

Узнай о чем ты на самом деле сейчас думаешь тут.


[an error occurred while processing this directive]



Apache Struts 2.0.11
Apache MyFaces Trinidad Core 1.2.3.
Sun переводит мобильные устройства с Java ME на Java SE
Хакерская атака!