[C#] รวมร่าง Array ให้กลายเป็น single strings ด้วย LINQ
บ่อยครั้งที่จะต้องแปลง 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 แบบซึ่งผลที่ออกมาได้เหมือนกันทั้งหมด แต่ก็ขึ้นอยู่กับเทคนิคส่วนบุคคลว่าจะใช้วิธีไหนในการพัฒนา ซึ่งเราสามารถนำเทคนิคนี้ไปประยุกต์พัฒนาต่อยอดกับข้อมูลรูปแบบอื่นๆ ได้