"Text1", "Text2", 새 UndefinedInfo ("Undfined1"), 새 UndefinedInfo ("Undfined2"), 새 UndefinedInfo ("Undefined3")와 같은 개체 목록이 있습니다. 텍스트 1, 텍스트 2 1 - - Undefined1이 Undefined2, Undefined3 2 - 내가 관리 텍스트 3스플릿 개체 유형에 따른 개체 목록
작성 //에게 목록>
출력 : "텍스트 3"
나는 다음과 같이 출력이 필요합니다 아래의 기능은 나쁘지만 어떻게 든 잘 작동합니다. TakeWhile 또는 SkipWhile 또는 yield를 사용하여 LINQ 확장을 사용하여 동일한 결과를 얻을 수있는 방법이 있습니까?
public static List<List<object>> PartitionByTypes(List<object> values)
{
List<List<object>> partitionedList = new List<List<object>>();
int j;
for (int i = 0; i < values.Count; i++)
{
j = i;
List<object> subList = new List<object>();
Type t = values[j].GetType();
do
{
subList.Add(values[j]);
j++;
if (j == values.Count)
{
break;
}
} while (values[j].GetType() == t);
partitionedList.Add(subList);
i = j - 1;
}
return partitionedList;
}
이 시도 = string.Join (","partitionedList.Select을 (문자열 출력 X => x.ToString()) .ToArray()); – jdweng
마침내 partitionedList를 채우고 있습니다. 솔루션이 어떻게 작동할까요? 샘플 입력과 출력을 제공 할 수 있습니까? – Abhay
출력은 CSV 문자열입니다 (각 배열 항목은 쉼표로 구분됩니다). 내 코드는 목록을 통해 각 항목을 문자열로 변환 한 다음 문자열 JOIN 메서드를 사용하여 각 항목 사이에 쉼표를 넣습니다. 파티션 목록 대신 값을 사용해야합니다. – jdweng