再帰的なデータ構造 OSのファイルシステムは、ファイルはフォルダに収められ、そのフォルダはさらにほかのファイルとともに上位のフォルダに、そのフォルダはさらに上位のフォルダに……、という具合に入れ子構造になって構成されています。このように、ある要素がそれと同等の要素を含むデータ構造を「再帰的なデータ構造」と呼びます。 ファイルシステムの表現 このような再帰的なデータ構造をプログラム上で表現してみます(図1)。ファイルとフォルダをそれぞれFile、Folderというクラスで表します。ファイルとフォルダそれぞれにgetValueというメソッドを用意することにします。FileのgetValueは自身のファイル容量を返し、Folderについてはそのフォルダが持つすべてのファイル容量の合計を返すとします(リスト1~リスト3)。 package package net.mogra.wings.javat
![再帰的なデータ構造を表現する(デザインパターン活用)](https://cdn-ak-scissors.b.st-hatena.com/image/square/3a1c1d3f5c2dda91e32ce57c1d9e1bb0c32c1280/height=288;version=1;width=512/https%3A%2F%2Fimage.itmedia.co.jp%2Fait%2Farticles%2F0412%2F14%2Fr20_107-1.gif)