כיצד להשתמש אם / אחר לוגיקה ב- Java 8 Streams
1. סקירה כללית
במדריך זה נדגים כיצד ליישם היגיון אם / אחר עם Java 8 זרמים. כחלק מההדרכה ניצור אלגוריתם פשוט לזיהוי מספרים זוגיים ואחידים.
אנו יכולים להסתכל במאמר זה כדי להתעדכן ב- Java 8 זרם יסודות.
2. קונבנציונאלי אחרת הגיון בפנים לכל אחד()
קודם כל, בואו ניצור רשימת מספרים שלמים ואז השתמש בהיגיון קונבנציונאלי אם / אחר בתוך ה- מספר שלם זרם לכל אחד() שיטה:
רשימות שרטוט = Arrays.asList (1, 2, 3, 4, 5, 6, 7, 8, 9, 10); ints.stream () .forEach (i -> {if (i.intValue ()% 2 == 0) {Assert.assertTrue (i.intValue ()% 2 == 0);} אחר {Assert.assertTrue (i .intValue ()% 2! = 0);}});
שֶׁלָנוּ לכל אחד השיטה מכילה היגיון if-else המאמת אם ה- מספר שלם הוא מספר אי זוגי או זוגי באמצעות אופרטור ה- Java modulus.
3. אחרת היגיון עם לְסַנֵן()
שנית, בואו נסתכל על יישום אלגנטי יותר באמצעות מסנן זרם () שיטה:
זרם evenIntegers = ints.stream () .filter (i -> i.intValue ()% 2 == 0); זרם oddIntegers = ints.stream () .filter (i -> i.intValue ()% 2! = 0); evenIntegers.forEach (i -> Assert.assertTrue (i.intValue ()% 2 == 0)); oddIntegers.forEach (i -> Assert.assertTrue (i.intValue ()% 2! = 0));
למעלה יישמנו את ההיגיון אם / אחר באמצעות ה- מסנן זרם () שיטה להפריד בין רשימת מספרים שלמים לתוך שניים זרםs, אחד למספרים שלמים זוגיים ואחד למספרים שלמים מוזרים.
4. מסקנה
במאמר מהיר זה, בדקנו כיצד ליצור Java 8 זרם וכיצד ליישם אם / אחר לוגיקה באמצעות לכל אחד() שיטה.
יתר על כן, למדנו כיצד להשתמש ב- מסנן זרמים שיטה להשגת תוצאה דומה, בצורה אלגנטית יותר.
לבסוף, קוד המקור השלם המשמש במדריך זה זמין ב- Github.