C #에 일부 컬렉션을 문자열로 빠르게 변환하고 구분 기호로 값을 구분하는 함수가 있습니까?
예를 들면 다음과 같습니다.
List<string> names
-> string names_together = "John, Anna, Monica"
답변
사용할 수 있습니다 String.Join
. List<string>
전화 번호 가 있으면 ToArray
먼저 전화하십시오 .
List<string> names = new List<string>() { "John", "Anna", "Monica" };
var result = String.Join(", ", names.ToArray());
.NET 4에서는 ToArray
과부하 String.Join
가 걸리므로 더 이상 필요하지 않습니다 IEnumerable<string>
.
결과 :
존 안나
답변
원하는 경우 linq를 사용하여이 작업을 수행 할 수도 있습니다
var names = new List<string>() { "John", "Anna", "Monica" };
var joinedNames = names.Aggregate((a, b) => a + ", " + b);
Quartermeister의 답변에서 비 Linq 구문을 선호하지만 Aggregate
더 느리게 수행 할 수 있다고 생각 합니다 (아마도 더 많은 문자열 연결 작업).