[C#] รวมร่าง Array ให้กลายเป็น single strings ด้วย LINQ

oum_nomercy
Arcadia Software Development
2 min readDec 13, 2018

บ่อยครั้งที่จะต้องแปลง string ให้อยู่ในรูปแบบของ Array หรือ List หรือ Enumerable แต่บางทีเราอยากจะแปลงกลับให้เป็น string บ้าง ซึ่งอาจจะใช้ for loop เข้ามาช่วยแต่วิธีนี้ไม่ค่อยจะมีประสิทธิภาพนักดังตัวอย่าง

ตัวอย่างจะใช้ enum System.ConsoleKey ในการทดสอบ

การแปลงให้เป็น single string โดย ใช้ for … loop

Result

อีกวิธีคือสามารถใช้ string join เข้ามาช่วยได้ให้ผลลัพธ์เหมือนกับ for … loop

การแปลงให้เป็น single string โดย ใช้ String Join

Result

วิธีสุดท้ายเป็นการใช้ LINQ โดยใช้ Agregate Method เข้ามาช่วยให้การแปลงมีประสิทธิภาพมากยิ่งขึ้น

การแปลงให้เป็น single string โดย ใช้ LINQ

Result

สรุป

การแปลงข้อมูลโดยใช้ LINQ Expression สามารถกำหนด format ให้มีความยืดหยุ่นมากกว่าทั้ง 2 แบบซึ่งผลที่ออกมาได้เหมือนกันทั้งหมด แต่ก็ขึ้นอยู่กับเทคนิคส่วนบุคคลว่าจะใช้วิธีไหนในการพัฒนา ซึ่งเราสามารถนำเทคนิคนี้ไปประยุกต์พัฒนาต่อยอดกับข้อมูลรูปแบบอื่นๆ ได้

--

--