C#メソッドでジェネリックリストを操作する

user4284351

私は自分でジェネリックを教えていて、リストで試してみたかったのですが、ジェネリックリストを自分のメソッドに「フィード」する方法がわからないという問題に苦労しました。一般的なメソッドでリストを「食べる」ための適切な方法は何ですか?:)

これが私のコードです:

 class Program<AnyDataType>
{
    static void Main(string[] args)
    {
        jdtlist.Add("something");
        jdtlist.Add("something");
        jdtlist.Add("something");
        Console.WriteLine(countlist(jdtlist));
        Console.ReadKey();
    }
    static List<AnyDataType> jdtlist = new List<AnyDataType>();

    public static int countlist(List<AnyDataType> list) // Yes I know this is practically useless but thats not why I am here :)
    {
        int listcount = 0;
        for (int i = 0; i < list.Count; i++)
        {
            listcount++;
        }
        return listcount;
    }
セルゲイ・ベレゾフスキー

ジェネリックメソッドを作成している場合は、ジェネリックパラメーターが必要です

public static int CountList<T>(List<T> list)
{
    int listcount = 0;

    for (int i = 0; i < list.Count; i++)        
        listcount++;

    return listcount;
}

次に、任意のジェネリックリストで呼び出すことができます

var list = new List<AnyDataType>();
// ..
Foo.CountList(list);

同じことがクラスにも当てはまります。ジェネリック型でクラスをパラメーター化する場合は、ジェネリック引数を指定する必要があります

public class Foo<T>

@DStanleyが述べたように、その場合、個々のメソッドをパラメーター化する必要はありません。

public class Foo<T>
{
    public static int CountList(List<T> list)
    {
        int listcount = 0;

        for (int i = 0; i < list.Count; i++)        
            listcount++;

        return listcount;
    } 
}

しかし、クラスをパラメータ化する必要があります

Foo<int>.CountList(list)

推奨読書:ジェネリック(C#プログラミングガイド)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

C#ジェネリックリストでEqualsメソッドを使用すると失敗する

分類Dev

C#でジェネリック式生成メソッドを作成する

分類Dev

C#でジェネリックメソッドの値を取得する方法

分類Dev

ジェネリッククラスの非ジェネリックリストでC#メソッドを呼び出す

分類Dev

C#メソッド呼び出しでジェネリッククラスを拡張する

分類Dev

C#でMicrosoft Fakesを使用して、インターフェイスでジェネリックメソッド定義をスタブアウトする方法

分類Dev

C#でジェネリックメソッドを呼び出す

分類Dev

このC#メソッドをジェネリックにする方法は?

分類Dev

C#ジェネリックメソッドを作成する方法

分類Dev

指定されたタイプのリストを返すジェネリックC#メソッド

分類Dev

ジェネリックリポジトリコンシューマクラスでジェネリックメソッドを作成する

分類Dev

FactoryでジェネリックC#メソッドをオーバーロードする方法は?

分類Dev

C#ネストされたクラスの場合、ジェネリックメソッドの型パラメーターを分解する

分類Dev

C#のジェネリッククラスを持つジェネリックメソッド

分類Dev

C#ジェネリックメソッドタイプでDllImportを使用する方法はありますか?

分類Dev

C#で型を変換するジェネリック拡張メソッドの書き方

分類Dev

1つのジェネリック(C#)で3つのメソッドを変換する

分類Dev

C#の正しい方法でジェネリックメソッドを実装する

分類Dev

ジェネリックメソッドを使用したc#

分類Dev

ジェネリックメソッドでジェネリック型をチェックする方法

分類Dev

レコードのリストを返したいc#でジェネリックメソッドを作成しようとしています

分類Dev

ジェネリックメソッドでインスタンスのメソッドを使用する

分類Dev

外部スレッドからラベルのテキストを変更するためのC#ジェネリックメソッド。

分類Dev

MEFのジェネリックメソッドでクラスをキャストする

分類Dev

C#からc ++ジェネリックメソッドを呼び出す

分類Dev

C#でジェネリック例外をスローするメソッドを文書化するにはどうすればよいですか?

分類Dev

メソッドのMethodInfoを取得する-この操作はジェネリック型でのみ有効です

分類Dev

クラスプロパティを設定するためのジェネリックメソッドで再帰を回避するc#

分類Dev

C#メソッドでジェネリッククラス参照を取得するにはどうすればよいですか

Related 関連記事

  1. 1

    C#ジェネリックリストでEqualsメソッドを使用すると失敗する

  2. 2

    C#でジェネリック式生成メソッドを作成する

  3. 3

    C#でジェネリックメソッドの値を取得する方法

  4. 4

    ジェネリッククラスの非ジェネリックリストでC#メソッドを呼び出す

  5. 5

    C#メソッド呼び出しでジェネリッククラスを拡張する

  6. 6

    C#でMicrosoft Fakesを使用して、インターフェイスでジェネリックメソッド定義をスタブアウトする方法

  7. 7

    C#でジェネリックメソッドを呼び出す

  8. 8

    このC#メソッドをジェネリックにする方法は?

  9. 9

    C#ジェネリックメソッドを作成する方法

  10. 10

    指定されたタイプのリストを返すジェネリックC#メソッド

  11. 11

    ジェネリックリポジトリコンシューマクラスでジェネリックメソッドを作成する

  12. 12

    FactoryでジェネリックC#メソッドをオーバーロードする方法は?

  13. 13

    C#ネストされたクラスの場合、ジェネリックメソッドの型パラメーターを分解する

  14. 14

    C#のジェネリッククラスを持つジェネリックメソッド

  15. 15

    C#ジェネリックメソッドタイプでDllImportを使用する方法はありますか?

  16. 16

    C#で型を変換するジェネリック拡張メソッドの書き方

  17. 17

    1つのジェネリック(C#)で3つのメソッドを変換する

  18. 18

    C#の正しい方法でジェネリックメソッドを実装する

  19. 19

    ジェネリックメソッドを使用したc#

  20. 20

    ジェネリックメソッドでジェネリック型をチェックする方法

  21. 21

    レコードのリストを返したいc#でジェネリックメソッドを作成しようとしています

  22. 22

    ジェネリックメソッドでインスタンスのメソッドを使用する

  23. 23

    外部スレッドからラベルのテキストを変更するためのC#ジェネリックメソッド。

  24. 24

    MEFのジェネリックメソッドでクラスをキャストする

  25. 25

    C#からc ++ジェネリックメソッドを呼び出す

  26. 26

    C#でジェネリック例外をスローするメソッドを文書化するにはどうすればよいですか?

  27. 27

    メソッドのMethodInfoを取得する-この操作はジェネリック型でのみ有効です

  28. 28

    クラスプロパティを設定するためのジェネリックメソッドで再帰を回避するc#

  29. 29

    C#メソッドでジェネリッククラス参照を取得するにはどうすればよいですか

ホットタグ

アーカイブ