• 締切済み

C# インスタンス

インスタンス化されたものが複数あって、その中でプロパティの値が条件に合うものを検索する方法ってありますか? 条件に合うものをリスト化できると良いです。 よろしくお願いします。

みんなの回答

  • hiodraiu
  • ベストアンサー率15% (447/2818)
回答No.3

No.1です コメント読みましたが、私の回答と話が噛み合ってないように思います。 失礼ですが質問者様はC#を普通に使えるレベルでしょうか? C#が使えるレベルの人を想定して解答しています。 > 例として、いくつかのインスタンス化されたものがあって、プロパティ名は同じで値が違います。 ですから、このインスタンスはどういう状態で存在していますか?また、このインスタンスって、同一クラス若しくは同じクラスを継承したクラスのインスタンスですか?それとも異なるクラスで同じプロパティ名があるクラスのインスタンスのことですか? > それらを総当りでリスト等にグループ分けしたいと思ってます。 総当りってのは、対象となるインスタンスはリスト等のコレクションに格納されたものなのですか? > そもそもインスタンスはリスト化できるのでしょうか。 質問の意図がよく分からないです。普通に考えたらリストの要素ってインスタンスですよね。型そのものをリストに入れることも可能でしょうけど、一般的なリストの使い方ってインスタンスを格納しますよね。

deli-ka
質問者

お礼

すみません。 確かに噛み合っていなかったですね。うまく説明できず申し訳ないと思います。 回答者様のレベルと釣り合っていないようですので、ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • oboroxx
  • ベストアンサー率40% (317/792)
回答No.2

インスタンス化されたものというのが、同一の型なのであれば、その型をつかってLIST<T>でリスト化すればいいかと思います。 親クラスの方で同一だというのであれば、その親クラスT2でLIST<T2>を作ってリスト化すればよいかと思います。 もちろん、同一のプロパティ名ということなので、そのT2で既に存在するプロパティだと想定しています。

deli-ka
質問者

お礼

ありがとうございます。LIST〈T〉というものを初めて知りました。 調べてみます!

全文を見る
すると、全ての回答が全文表示されます。
  • hiodraiu
  • ベストアンサー率15% (447/2818)
回答No.1

インスタンスは別々の変数ですか?それともコレクションの要素ですか? 前者なら、一つ一つ条件と照らし合わせるしか無いと思います。後者ならLinqのSelectメソッドとかWhereメソッドなんかで抽出できると思います。

deli-ka
質問者

補足

例として、いくつかのインスタンス化されたものがあって、プロパティ名は同じで値が違います。 それらを総当りでリスト等にグループ分けしたいと思ってます。 そもそもインスタンスはリスト化できるのでしょうか。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Oracleでインスタンスを複数にしたい

    初めて質問させていただきます。 Oracleの初心者です。 仕事でOracleインスタンスを複数にして欲しいと言われ方法を 検索したのですが、なかなか見つかりません。。 どうしたら、インスタンスを複数にできますか? 初歩的(?)なことで恥ずかしいのですが分からなくて困っています。 回答よろしくお願い致します。

  • 動的に生成されるインスタンス間のやりとりについて

    あるクラスのインスタンスが動的に複数生成される状態で,一つのインスタンスから, 複数の他インスタンスのメンバ関数(仮に関数A)を呼びたいと考えています. そこでstaticなインスタンスのリストのようなものを設けようと考えました. 各インスタンスの関数Aへ関数ポインタの配列を定義し, それによって上記を実現しようと思いました. しかし,インスタンス生成前にインスタンス名を指定して (instance_name_.*p)(); という様に呼べるわけもなく,どう動的にインスタンスのリストを保持するかが思いつきません. 説明が下手ですいません.どなたか教えていただけますでしょうか. よろしくお願いします. 環境 Windows XP, cygwin

  • インスタンスとオブジェクト

    こんばんは。 変数について教えて下さい。 プログラム自体が初めてなので 「たのしい Ruby 第3版」を読んでいます。 ずっとインスタンスとオブジェクトの違いが曖昧なままです。 その本の「クラスとモジュール」という章にて クラスを定義する構文。 インスタンス変数とローカル変数の違いですが、 以下の説明で一部理解できずにつまずいています。 ―――――――――――― @ で始まる変数は インスタンス変数 といいます。 ローカル変数はメソッドごとに異なる変数として扱われますが、 インスタンス変数は同じインスタンス内であれば、 メソッド定義を超えてその値を参照したり、変更したりできます。 なお、初期化されていないインスタンス変数を参照すると nil が得られます。 インスタンス変数は、インスタンスごとに違う値を持つことができます。 またインスタンス変数は、 インスタンスがある間は値を保持しておいて 何度でも利用することができます。 一方、ローカル変数はメソッド呼び出しごとに新しく割り当てられるため、 メソッドから抜けると値を忘れてしまいます。 ―――――――――――― ここで分からないのは、 ・ローカル変数が "メソッドごと" に異なる変数として扱われる ・インスタンス変数は同じ "インスタンス内" であれば、 メソッド定義を超えてその値を参照したり、変更したりできます の部分です。 Webで検索してますが、 プログラミング経験ありを前提で書かれているような。 他の言語も知らないので分からない、そんなページが多いです。 人に聞くからには 自分でも頑張って理解できるように考えますので、 どうか回答よろしくお願いします。

    • ベストアンサー
    • Ruby
  • objective-c のインスタンスについて教えていただきたいのですが

    初心者なのですみません。 ご存知の方教えていただきたいのですが、 例えばaインスタンスがbクラスをインスタンス化して bインスタンスがcクラスをインスタンス化して aインスタンスがcクラスをインスタンス化しないで bインスタンスがインスタンス化したcインスタンスに メソッド送信のようなことが したいのですがうまくいきません。 どのようにすればよいですか? よろしくお願いします (aインスタンスがcクラスをインスタンス化した場合、bインスタンスがcクラスをインスタンス化したものと同じもの(アドレスが同じ?)なものなのでしょうか?違いますよね?ようするにストレージクラスやNSDataなどインスタンスの中のデータを複数のインスタンスから取り出したいのです) 面倒でスミマセン。 以下は確認のために簡易的に作ったものです。 文字数多すぎなのでinterfaceは省きました #import "Aobject.h" #import "Bobject.h" #import "Cobject.h" @implementation Aobject - (IBAction)callb:(id)sender { id Bobj = [[Bobject alloc]init]; [Bobj make]; [Cobj log]; //ここでエラーが出ます(`Cobj' undeclared (first use in this function) (Each undeclared identifier is reported only once for each function it appears in.)) } @end //-------------------------------------- #import "Bobject.h" #import "Cobject.h" @implementation Bobject - (void)make { id cobj = [[Cobject alloc]init]; } @end //-------------------------------------- #import "Cobject.h" @implementation Cobject - (void)log { NSLog(@"ok"); } @end

    • ベストアンサー
    • Mac
  • ListにDialogを格納して閉じたら削除 C#

    Visual C# で複数のモードレスダイアログを表示させ、 一括で最前面表示の有効・無効を切り替えるために List配列にインスタンスを格納しました。 ・Form1 public List<MyDialog1> dialogList = new List<MyDialog>(); ・ボタンのクリック時 MyDialog dialog = new MyDialog(); dialogList.Add(dialog); 動作としては問題なかったのですが、ダイアログを閉じた際 リストからそのダイアログのインスタンスを削除したいのですが、 どのようにすればいいのでしょうか? 現状わからない点は、ダイアログのクラスからオーナーのFormのプロパティにアクセスする方法と、 リスト内のインスタンスのうち、閉じるイベントを発生させたのはどのインスタンスであるかを区別する方法です。

  • sqlserverインスタンス

    手違いでインストール、アンインストールを繰り返し、現在SQLSERVER2005EXPRESSをインストールしています。 ですが、インスタンスは綺麗に消えなかったためか3つできている状態となっています。 インスタンスを残しておいても繋がるのでいいと思ってましたが、複数起動あるのは重くなるのでしょうか。 以前のインスタンスを消す方法を教えてもらえないでしょうか。

  • インスタンスを共有するには

    1つのインスタンスを他の複数のクラスで共有するには どうすればよいのでしょうか。 私が知っているは、生成時に共有したいインスタンスを渡す という方法です。 他にどのような方法があるのでしょうか。 ご存知の方がいましたらご教授くださいよろしくお願いいたします。

  • インスタンスハンドルは何の役に立つものですか?

    C言語でWINDOWSのプログラムを作成したさい、WinMainの引数としてインスタンスハンドルが渡されます。 XPで作成したアプリケイションを複数同時に立ち上げると、インスタンスハンドルの値はすべて同じとなります。仮想メモリが導入される前のOSでは、異なる値になるようです。 仮想メモリを使う現在、インスタンスハンドルは何の役に立つのでしょうか。旧来からの書式を変えないためだけに存在するのでしょうか。

  • C#のインスタンスを参照渡ししたい

    メインのクラスAにウェブブラウザAがあります。 クラス A { メソッドA(){  ウェブブラウザA.Navigate(URL); } メソッドC(){  MessageBox.Show("これは成功"); } } クラス B {  メソッドB(ウェブブラウザA){   ウェブブラウザA.Navigate(URL);//成功  } A a = new A(); a.メソッドA();//失敗 a.メソッドC();//成功 } このようなプログラムを作っています。 クラスBをインスタンスして実行すると クラスBのメソッドBは成功しますが、クラスAの方で宣言しているa.メソッドAは失敗します しかし、a.メソッドC();は成功します。 これは、a.メソッドAは、その上のA a = new A();でつくられた新しいインスタンスのなかで処理がされていて起動時につくられたクラスAのインスタンスとは別のものになっているからだと思うのですが、まちがいないでしょうか? この処理を成功させたい場合、起動時に作られたクラスAのインスタンスをメソッドBの引数に参照渡しですれば、  メソッドB(ウェブブラウザA){   ウェブブラウザA.Navigate(URL);//成功   メソッドA();  } も可能なのではないかと考えているのですが、可能でしょうか?またそのインスタンスを引数にする方法はどのようなものでしょうか? ちなみに、クラスBはDLLに置いてあり、メソッドAは複数のDLLで使うので毎度書くのは面倒なのでクラスAの中で呼び出して使いたいと考えています。

  • 複数インスタンス

    複数インスタンス サーバーマシン1台につき1インスタンスに出来れば良いんですが、コストの関係上、 サーバーマシン1台に複数のインスタンスを作成しようとしています。 Oracleでは複数インスタンスでの運用はパフォーマンスに大きく影響するので あまりやらない方が良いと聞きますが、MySQLではどうでしょうか? また、MySQLのWindows版、Linux版で、この点について違いはありますでしょうか?

    • ベストアンサー
    • MySQL
このQ&Aのポイント
  • 【ぷらら(インターネット接続サービス )】ffftp接続後index.htmlアップロードできない、更にgoogle等検索インデックスをクリックしても何時になってもロードしない。外のページは表示されるhttp://www13.plala.or.jp/lombard/ ←top空白、アップロードできない。
  • インターネット接続サービス「ぷらら」を使用してFFTP接続後、index.htmlをアップロードできず、さらにGoogleなどの検索インデックスをクリックしてもロードされません。ただし、外部のページは表示されます。http://www13.plala.or.jp/lombard/のトップページは空白で、アップロードできません。
  • 「ぷらら」というインターネット接続サービスを利用してFFTP接続後、index.htmlをアップロードできない状況です。また、Googleなどの検索インデックスをクリックしてもページがロードされない問題が発生しています。ただし、外部のページは表示されます。http://www13.plala.or.jp/lombard/のトップページは空白であり、アップロードもできません。
回答を見る

専門家に質問してみよう