Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#에서 foreach 없이 목록에서 목록으로 항목을 복사하려면 어떻게 합니까?

<시간/>

List는 인덱스로 액세스할 수 있고 목록을 정렬, 검색 및 수정하는 메서드가 있는 강력한 형식의 개체 모음입니다. System.Collection.Genericnamespace 아래에 있는 ArrayList의 일반 버전입니다.

IList를 구현하는 ArrayList에 해당하는 List.

System.Collection.Generic 네임스페이스 아래에 있습니다.

List는 지정된 형식의 요소를 포함할 수 있습니다. 컴파일 타임에 typechecking을 제공하며, 제네릭이기 때문에 boxing-unboxing을 수행하지 않습니다.

요소는 Add(), AddRange() 메서드 또는 컬렉션 초기화 구문을 사용하여 추가할 수 있습니다.

요소는 인덱스를 전달하여 액세스할 수 있습니다. 내 목록[0]. 인덱스는 0부터 시작합니다.List는 ArrayList보다 더 빠르고 오류가 발생하기 쉽습니다.

목록은 인덱스, for/foreach 루프 및 LINQ 쿼리를 사용하여 액세스할 수 있습니다. 목록의 인덱스는 0부터 시작합니다.

배열과 마찬가지로 개별 목록 항목에 액세스하려면 대괄호 안에 인덱스를 전달합니다. foreach 또는 for 루프를 사용하여 List 컬렉션을 반복합니다.

방법 1

class Program{
   public static void Main(){
      List<int>originalList=new List<int>(){1,2,3,4,5,7,8,9};
      List<Int32>copy = new List<Int32>(originalList);
      foreach (var item in copy){
         System.Console.WriteLine(item);
      }
      Console.ReadLine();
   }
}

출력

1
2
3
4
5
7
8
9

방법 2

class Program{
   public static void Main(){
      List<int>originalList = new List<int>() { 1, 2, 3, 4, 5, 7, 8, 9 };
      List<Int32> copy = originalList.ToList();
      foreach (var item in copy){
         System.Console.WriteLine(item);
      }
      Console.ReadLine();
   }
}

출력

1
2
3
4
5
7
8
9

방법 3

class Program{
   public static void Main(){
      List<int> originalList = new List<int>() { 1, 2, 3, 4, 5, 7, 8, 9 };
      List<Int32> copy = originalList.GetRange(0, 3);
      foreach (var item in copy){
         System.Console.WriteLine(item);
      }
      Console.ReadLine();
   }
}

출력

1
2
3