2016-06-30 5 views
-1

スタジアムの予約と発券のためのJavaアプリケーションでは、スタジアム内の個々の席を計画したいと思います。グラフで示されたときに彼らが選択して予約することができるなどスタジアム用データ構造

私は「座席」オブジェクトの多次元配列について考えています。例えば、スタジアム内のどのブロックを選択し、[5をシートに移動した後、それで

Seat[][] 

:これらは、等カテゴリ、位置、可用性(予約)などのシートに関するデータ、例えば含有するであろう] [8]行と列のために。私は、レイアウトやショー空席を表示するには、この上で反復するか、既に

まずなどで販売ができ、どのような配列でこれを実現するための理想的な方法でしょうか?私は基本的なことが必要で、配列内のオブジェクトを変更して繰り返します。

は第二に、どのようにこれは非常に異なる方法で達成することができたので、複数のクライアントがデータを変更することができます。顧客データでは、私はSQLデータベースを持っている、複数のクライアントは、ローカルファイルを保存しないでシステムを使用することができます。 私はこのような座席を表すためにSQLを使用する方法を考えるのに苦労しています。

問題は、SQLテーブルをどのように構造化するのか不明です。私は配列を使うことができますが、これは私が望む完全な機能を満たしません。

+1

私は間違っているかもしれませんが、一般的に私がスタジアムに行くとき、私の切符はセクション、行、座席順に配置されています...あなたのデータ構造は似ていないはずですか? –

+0

私は行と座席にちょうど(5,6)を使用することを計画していましたが、私の質問でセクション/ブロックを無視しました。 –

+0

ダウンボートは、なぜですか?方法を言うなら、私はその質問を修正することができます。 –

答えて

0

あなたはオブジェクトがこの配列の内部で起こっている正確に何を指定していないので、質問は少し混乱しています。私は、Seatオブジェクトの多次元配列を意味すると仮定します。そうでない場合は、Seatをあなたが置いているオブジェクトに置き換えてください。

座席の多次元配列には、2つの主要なオプションがあります。最初と最も単純なのは、最も長い行の長さを見つけ、その長さに配列の長さを定義することです。もちろん、そのセットでは、単に座席が存在しない配列にいくつかのスポットがあります。存在しない座席のスポットをすべてnullで簡単に記入することができます。

使用する2番目の、おそらくより良い方法は、ジャグ配列を作成することです。適切な数の列を作成できるように、各行の長さを事前に把握する必要があります。 jagged arrayには、各行に同じ数の列がありません。あなたのコードは次のようになります:

int numRows=//Number of rows in stadium 
int[] numCol=//Number of columns in each row 
Seat[][] stadium = new Seat[numRows][]; //Defines stadium without specifying # of columns 
for(int i=0; i<stadium.length; i++) 
{ 
    stadium[i]=new Seat[numCol[i]]; //Creates each row with correct number of columns 
} 

このコードは、もちろん自分のプログラムで動作するように修正してください。 stadiumを繰り返し実行すると、各行の長さを確認する必要があります。

それが複数のクライアントによって、それを編集可能に出たとき、あなたは、あなたの質問をより具体的でなければなりません。 JavaプログラムでSQLテーブルの値にアクセスし、それらを多次元配列の値に割り当てることができます。それができない場合は、Javaプログラムを実行してaccept argumentsを配列内の値に割り当てることができます。しかし、より具体的な答えを得るためには、より具体的な質問をする必要があります。

幸運を祈る!