パブリック クラス MyLinkedList <E> { 民間最初のノード。 プライベート int型のサイズ。 公共 int型のサイズ(){ 戻りサイズ; } @オーバーライド パブリック文字列のtoString(){ 場合(サイズ== 0 ){ 戻り " [] " 。 } 他{ StringBuilderのSB = 新しい StringBuilderの(" [ " ); ノード電流 = 最初; しばらく(現在!= nullの){ sb.append(current.value).append(" " ); 現在 = current.next。 } sb.replace(sb.length() - 1、sb.length()、" ] " )。 リターンsb.toString(); } } パブリック 静的 ボイドメイン(文字列[]引数){ MyLinkedListリスト = 新しいMyLinkedList(); list.addFirst(" パイソン").addFirst(" javaの").addFirst(" こんにちは").addFirst(" PHP " ); システム。アウト.println(リスト); list.removeFirst(); システム。アウト.println(リスト); システム。アウト .println(list.contains(" パイソン" )); } 公共E removeFirstと(){ 場合(サイズ== 0 ){ 戻り ヌル。 } 他{ ノード <E> TEMP = 最初; 最初 = temp.next。 サイズ - ; リターン temp.value。 } } パブリック ブールは{(E e)は含まれてい ノード電流 = 最初; しばらく(!現在= nullの){ 場合(current.value == E){ 返す 真。 } 現在 = current.next。 } リターン はfalse ; } 公共MyLinkedList addFirst(E電子){ ノードnewNodeは = 新しいノード(e)を、 newNode.nextは = 最初; 最初 = newNode。 サイズ ++ ; 返す これを。 } プライベート 静的の クラス ノード<E> { プライベートE値。 民間次のノード。 ノード(E値){ この .VALUE = 値; } @オーバーライド 公共の文字列のtoString(){ 戻り 値== nullの?" ヌル":値+ "" ; } } }
自分自身のLinkedListを達成するために
おすすめ
転載: www.cnblogs.com/moris5013/p/12040389.html
ランキング