문자열 배열 목록을 int 배열 목록에 캐스팅하려고합니다.목록 <String[]>을 목록으로 변환하는 방법 <int[]>?
List<int[]> dataset = Read(fileName, separator).Select(
line => Array.ConvertAll(line, s => int.Parse(s)
);
읽기 문자열 배열의 목록을 반환 : List<String[]> dataset
문자열 배열 목록을 int 배열 목록에 캐스팅하려고합니다.목록 <String[]>을 목록으로 변환하는 방법 <int[]>?
List<int[]> dataset = Read(fileName, separator).Select(
line => Array.ConvertAll(line, s => int.Parse(s)
);
읽기 문자열 배열의 목록을 반환 : List<String[]> dataset
을 당신은 목록 (IEnumerable<int[]>
인) .Select()
결과를 변환 .ToList<T>()
을 사용할 수 있습니다 나는 다음과 같은 노력했다.
이렇게하면 항목 배열의 모든 항목에 int.Parse
을 적용하고 결과를 List로 변환합니다.
는 또한, 코드 동질성을 제공하기 위해, 당신은 Array.ConvertAll
대신 LINQ Select
및 ToArray
를 사용할 수 있습니다
List<string[]> stringArrayList = ...;
List<int[]> intArrayList = stringArrayList
.Select(stringArray => stringArray.Select(int.Parse).ToArray())
.ToList();
하나의 작은 수정을 : 당신은 int로 문자열을 캐스팅하지 않습니다, 당신은 변환/을 구문 분석 그것.
고마워, 내가 뭘하려고 했어! – Aevitus
@TimSchmelter 당신이 무슨 뜻인지 이해하지 못했습니다 :) 왜 그것이 유효하지 않습니까? 누가 그것을 사용합니까? –
당신은 이런 식으로 뭔가를 시도 할 수 있습니다 :
List<int[]> Listintegers = yourList
.Select(y => y.Select(x => int.Parse(x)).ToArray())
.ToList();
List<string[]> source = new List<string[]>
{
new string[2] { "2", "3" },
new string[4] { "4", "5", "6", "7" },
new string[1] { "1" }
};
List<int[]> result = source.Select(array => Array.ConvertAll(array, item => int.Parse(item))).ToList();
할 수 있습니다하지 **를 int로 캐스트 ** 문자열을 수행 할 수 있습니다 ** 변환 (구문 분석) **를. –
간단한 루프를 이해하고 디버그하기가 더 쉬울 수도 있습니다. – Vland
그게 무슨 뜻인지, 미안 해요. – Aevitus