ניתן לזרום ב- Java

1. סקירה כללית

במדריך קצר זה, בואו להמיר ג'אווה ניתן לנידון חפץ לתוך זרם ולבצע בו כמה פעולות סטנדרטיות.

2. המרה ניתן לנידון ל זרם

ה ניתן לנידון הממשק נועד תוך התחשבות בכלליות ואינו מספק שום דבר זרם() שיטה בפני עצמה.

במילים פשוטות, אתה יכול להעביר את זה ל StreamSupport.stream () שיטה וקבל א זרם מהנתון ניתן לנידון למשל.

בואו ניקח בחשבון שלנו ניתן לנידון למשל:

Iterable iterable = Arrays.asList ("Testing", "Iterable", "conversion", "to", "Stream");

וכאן נוכל להמיר זאת ניתן לנידון למשל לתוך זרם:

StreamSupport.stream (iterable.spliterator (), שקר);

שים לב שהפרמטר השני ב StreamSupport.stream () קובע אם התוצאה זרם צריך להיות מקביל או רציף. אתה צריך להגדיר את זה נכון, להקבלה זרם.

עכשיו בואו לבדוק את היישום שלנו:

@Test הציבור בטל givenIterable_whenConvertedToStream_thenNotNull () {Iterable iterable = Arrays.asList ("Testing", "Iterable", "conversion", "to", "Stream"); Assert.assertNotNull (StreamSupport.stream (iterable.spliterator (), false)); }

כמו כן, הערת צד מהירה - זרמים אינם ניתנים לשימוש חוזר, בעוד ניתן לנידון הוא; זה גם מספק א ספליטר () שיטה, המחזירה א מופע java.lang.Spliterator על האלמנטים המתוארים על ידי הנתון ניתן לנידון.

3. ביצוע זרם מבצע

בואו לבצע פעולת זרם פשוטה:

@ מבחן ציבורי בטל כאשר ConvertedToList_thenCorrect () {Iterable iterable = Arrays.asList ("Testing", "Iterable", "conversion", "to", "Stream"); תוצאת רשימה = StreamSupport.stream (iterable.spliterator (), false) .map (String :: toUpperCase) .collect (Collectors.toList ()); assertThat (התוצאה מכילה ("TESTING", "ITERABLE", "CONVERSION", "TO", "STREAM")); }

4. מסקנה

מדריך פשוט זה מראה כיצד ניתן להמיר ניתן לנידון למשל לתוך זרם למשל ולבצע בו פעולות סטנדרטיות, בדיוק כמו שהיית עושה עבור כל דבר אחר אוסף למשל.

את היישום של כל קטעי הקוד ניתן למצוא בפרויקט Github.


$config[zx-auto] not found$config[zx-overlay] not found