Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

โปรแกรมวนลูป Stream พร้อมดัชนี (Index) ใน Java 8

ตัวอย่างโค้ด

import java.util.stream.IntStream;
import java.util.*;
import java.util.concurrent.atomic.AtomicInteger;

public class Demo {
    public static void main(String[] args) {
        String[] my_array = {"T", "h", "i", "s", "s", "a", "m", "p", "l", "e"};
        AtomicInteger my_index = new AtomicInteger();
        System.out.println("The elements in the string array are :");
        Arrays.stream(my_array)
              .map(str -> my_index.getAndIncrement() + " -> " + str)
              .forEach(System.out::println);
    }
}

ผลลัพธ์

The elements in the string array are :
0 -> T
1 -> h
2 -> i
3 -> s
4 -> s
5 -> a
6 -> m
7 -> p
8 -> l
9 -> e

คลาส Demo มีฟังก์ชัน main สร้างอาร์เรย์ String และอินสแตนซ์ AtomicInteger ใช้ Arrays.stream() สร้าง Stream จากอาร์เรย์ ใช้ map() ร่วมกับ AtomicInteger.getAndIncrement() เพื่อสร้างดัชนีที่เพิ่มขึ้นทีละ 1 สำหรับแต่ละ element แล้วพิมพ์แต่ละบรรทัดด้วย forEach