スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

java.util.EmptyStackExceptionについて

 なぜかStackが空のときにpopを実行するとnullが返却されると思い込んでいてjava.util.EmptyStackExceptionが発生。
 そのときの対処をメモ。




 下記のようなコードを書いていた

public class EmptyStackTest {
 public static void main(String[] args){

  Stack s = new Stack();

  String tmp = null;
  while(null != (tmp = s.pop())){
   System.out.println(tmp);
  }
 }
}



 そうすると、当然java.util.EmptyStackExceptionが発生してしまう。

 この例外は名前のとおりStackが空のときにpopなどを呼び出した場合に発生する。

 ということで、下記のように修正。

public class EmptyStackTest {
  public static void main(String[] args){

  Stack s = new Stack();
  String tmp = null;

  while(false == s.isEmpty()){ //★スタックが空でない場合ループ
   tmp = s.pop(); //★
   System.out.println(tmp);
  }
  }
}

 ★の箇所が変更箇所



 今度からは勘でなく、JavaDocで確認してから実装しよう……
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

コメントの投稿

管理者にだけ表示を許可する

検索フォーム
プロフィール

takuan93

Author:takuan93
本ブログの説明書→「ReadMe」

管理者に連絡

カテゴリ
WiX (5)
Ant (1)
フリーエリア
最新記事
カウンター
カレンダー
03 | 2018/04 | 05
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 - - - - -
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。