จริง ๆ แล้ว ใน Java Version 7 เองก็มีอะไรที่น่าสนใจเหมือนกัน แต่คงข้างมาเขียน 8 ก่อนเพราะมัน Wow กว่า ซึ่งที่ว่ามีอะไรใหม่ ๆ ที่น่าสนใจใน version นี้ก็ได้แก่ Collection และ Lambda
มาลองดูตัวอย่าง Code ง่าย ๆ กันก่อน ว่าเราเห็นอะไรบ้าง ถ้าเรามีข้อมูลใน List ประมาณนี้
List<String> s = new ArrayList<>();
s.add("1");
s.add("2");
s.add("3");
หากเราต้องการ ดูข้อมูลแต่ละรายการก็ต้องทำการวนข้อมูลเพื่อทำการดูข้อมูลทีละข้อมูล
for(String a : s){
System.out.println(a);
}
ต่อไป เป็นของ Java 8
s.forEach(System.out::println);
ตรงนี้จะเห็นว่ามี 2 ส่วนที่เสนอไปยังหัวเรื่องคือ
- Streams > forEach ที่เป็นความสามารถใหม่ของ Collection (จริง ๆ แล้วน่าจะบอกว่ามาจาก Iterable) ส่วนนี้จะทำหน้าที่ในการวนข้อมูลทีละรายการมาทำงาน
- Functional Programming ในนี้คือ a -> System.out.println(a) โดยส่วนแรกจะเป็น a คือ ตัวรับ parameter ส่วนที่อยู่หลังเครื่องหมาย -> คือ คำสั่ง
เรามาเริ่มทีละเรื่องกันดีกว่า เรื่องแรกขอเป็นไกล้ตัวก่อนเลยคือ Streams Stream นั้นเป็นตัวช่วยแสดงลำดับข้อมูล ของ Object ประเภท Iterator ซึ่งมีความสามารถในการทำรายการแบบขนานกันได้ ในการทำงาน Stream นั้นจะถูกสร้างจาก Collection
เราจะมาดูว่าเราใช้อะไรจาก Stream ได้บ้าง
... ไว้แค่นี้ก่อนนะ เดี๋ยวไว้มาต่อ ...
ไม่มีความคิดเห็น:
แสดงความคิดเห็น