어떻게 LINQ를 사용하여 쿼리 조건과 일치하는 마지막 요소가 배열을 선택할 수 있습니까?C# LINQ + 조건을 통해 배열에서 나열
예를 들어,이 작동하지 않았다 : 내가 제대로 선택 사용하지 않을 가능성이 오전부터
public class Node{
public var nodeVar;
public Node(var arg){ //constructor of node
this.nodeVar = arg;
}
} //end of class
Node[][] path = new Node[3][]; //a jagged array from which to select the required arrays
path[0] = new Node[]{ new Node("A"), new Node("B"), new Node("C") };
path[1] = new Node[]{ new Node("D"), new Node("E"), new Node("W") };
path[2] = new Node[]{ new Node("G"), new Node("W") };
//trying to initialize a list of Node arrays using LINQ:
List<Node[]> thirdArray = path.Select(o => (o.Last().nodeVar == "W") as List<Node[]>).ToList()
thirdArray가 null로 나옵니다. 가 나는 또한 오류가 점점 오전 : (두 번째/두 번째 배열에서부터
CS 0039: Cannot convert type 'bool' to System.Collections.Generic.List<Node[]> via a built-in conversion
내가 경로에서 두 번째와 세 번째 배열을 선택하고 그들로부터 목록을 만들고 싶어 것을, 마지막 요소의 변수는 당신이 필요로하는 W의 값)
? 네가 만든 수업? 아니면 그것은'public string nodeVar'와'string arg'라고 생각합니까? –
@ GrantWinney, 클래스입니다.하지만이 경우에는 무언가를 제공 할 수 있도록 문자열을 사용했습니다. –