コレクションand総復習

こんにちは!よしときです。 今回はJavaの最後の章、コレクションをやるとともに復習をかねた問題をやりました。 コレクションについては うさ が記事にした通りですが、自分は便利なツールが沢山入っている便利箱たちというイメージで完結しました。 今回は練習としてリスト系を使ってみましたが、必要なときに検索するのが良いような気がしました(あまりに膨大な量があるので) なので、何かする時にこういうことが出来るということを学んだ章とも言えました。 と、いうより。

プログラミングが出来る人

ここまでやってきて分かったのですが、プログラミングが出来るというのは 「全て記憶していて作りたいものが作れる人」 というより 「どんなことが出来るかを知っていて、それを必要に応じて思い出し、調べて、利用して作り上げる人」 なのだな。ということが分かりました。 あくまでツールだということですね。 つまり丸暗記は意味ないなということです!w

問題

さて、そんなこんなで今回やった問題なのですが。 コレクションの中でArrayListを使ったのですが、 その内部構造 つまり
  • 配列[初期値=INITIAL_CAPACITIY]ar サイズsz を作り
  • addメソッドで要素を追加。配列が足りない場合は長さを倍に新しい配列を確保していき
  • getメソッドで参照し、添字が範囲外なら例外をthrowし
  • sizeメソッドで格納されている要素数を返す
というような動作をするクラスを書いていくという問題です。 いや、すごく悩んでwhileやらforやらifやら使って作ってたんですが、うまく行かず。 答えを見てびっくり。 見てみましょう ええええーー 初めて見たよ、初めましてSystem.arraycopy・・・ 問題出す上で習ってない問題を出す。 まぁ、このおかげで調べながら作ることという前述した旨を知ることが出来たのですが。 知らなきゃできな・・・ あれ。 答えにこんな記述が。 となるそうです。うん。確かに出来ますね。 思いつけなかった。。 悔しいです。 しかし、このように便利なツールも沢山あり調べて使っていけますが、自分で工夫して動作させるのも一つの醍醐味ですね! 沢山勉強になりました!ありがとう!Java! 使ってきた教科書はこちら 明日からはフレームワークの勉強をしていきたいと思います!

id-entity.jp

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です