2016-11-15 4 views
-4

私はまだC#とOOPで把握しようとしていますので、まずはお許しください。C#複数の値を持つ商品リスト

私は挑戦の一部としてシンプルなコンソールショッピングバスケットを構築しようとしています。バスケットの5つのシナリオを設定するために必要な多くの製品があります。

しかし、3つの異なる値(Desc、Dept、Price)を持つ製品のそれぞれをリストするには、私は最良のアプローチについて確信が持てますし、配列を介して必要なアイテムを選択できるようにしたいと考えています。

現在、私のようなリストされている項目があります。

 itemOnePrice = 10.50m; 
     itemTwoPrice = 54.65m; 
     itemThreePrice = 03.50m; 
     itemOneDept = "Clothing"; 
     itemTwoDept = "Clothing"; 
     itemThreeDept = "Head Gear"; 
     itemOneDesc = "Hat"; 
     itemTwoDesc = "Jumper"; 
     itemThreeDesc = "Head Light"; 

を私はリストにタプルを見てきましたが、私は本当に私のためにこれらの作業を作成する方法を見つけ出すことができませんでした。誰かが、私のバスケットのコンテンツを取り込むために、これらの製品をリストする最良の方法を説明してください。

+0

を作成し、

class Item { public decimal Price {get;set;} public string Department {get;set;} public string Description {get;set;} } 

セカンドクラスを作成し、 'item'の配列を持ちます。 –

+0

「より良い」というあなたの基準が何であるかを定義して、「最良のアプローチ」を提供してください。 C#で配列やクラスについてまだ読んでいないように思えますが、まずはSOの質問をする前に、それらの章を完成させたいかもしれません。 –

+0

これは、私が達成しようとしていることに接近する最良の方法ではないことを知っているので、膨大な量の変数を作成していないということを意味します。 私はTupleを動作させるのに時間を費やしましたが、私は正常に初期化できなかったことがわかりました。最初はリストが私に一つの価値しか与えてくれないようでした。 私はそれを働かせ、さまざまな方法を研究しようと数時間を費やしましたが、私が現在理解していることには限界があります。 私は基本的な質問をするために投票したことに気付かなかった、申し訳ありません。 – Jason

答えて

2

まず、あなたが `price`、` description`、と `department`を持って` item`クラスを持っている必要があり、リスト

List<Item> items = new List<Item>(); 

items.Add(new Item{Price = 10.5m, Department = "Clothing", Description = "Hat"}); 
items.Add(new Item{Price = 54.65m, Department = "Clothing", Description = "Jumper"}); 
items.Add(new Item{Price = 03.50m, Department = "Head Gear", Description = "Head Light"}); 
+0

これは "ベスト"アプローチではありません。変更可能なプロパティを作成する理由は何ですか?私はあなたが提案したものよりも、不変のクラスが良いと主張したいと思います。それについて話し合ってください。また、Descは単語ではありません - どのように "Description"より優れていますか? –

+0

修正価格設定ツール。 – mybirthname

+0

@AlexeiLevenkovそれはOPの要件に依存します。詳細を見ることなく、私は何も言えません。 –

関連する問題