首頁 > Java > java教程 > 主體

Java 9中takewhile()和dropWhile()方法的差別是什麼?

WBOY
發布: 2023-09-01 20:57:03
轉載
1365 人瀏覽過

Java 9中takewhile()和dropWhile()方法的区别是什么?

Stream API 的t#akewhile() 方法接受所有值,直到predicate # 傳回false,而 Stream API 的>dropWhile() 方法會刪除所有值,直到它與謂詞相符。如果流是有序的,則takewhile() 方法會傳回一個流,其中包含從此流中獲取的與謂詞匹配的元素的最長前綴,而dropWhile() 方法傳回符合謂詞後的剩餘流。如果流是無序的,則takewhile() 方法傳回一個流,該流由從與給定謂詞匹配的流中提取的元素子集組成,而dropWhile() 方法傳回刪除與給定謂詞相符的元素子集後,由流的剩餘元素組成的流。

takeWhile() 的語法

<strong>default Stream<T> takeWhile(Predicate<? super T><!--? super T--> predicate)</strong>
登入後複製

範例

import java.util.stream.Stream;
public class TakeWhileMethodTest {
   public static void main(String args[]) {
      <strong>Stream</strong>.<strong>of</strong>("India", "Australia", "Newzealand", "", "South Africa", "England")
      .<strong>takeWhile</strong>(o->!o.isEmpty())
      .forEach(System.out::print);
   }
}
登入後複製

輸出

<strong>IndiaAustraliaNewzealand
</strong>
登入後複製

dropWhile() 語法

<strong>default Stream<T> dropWhile(Predicate<? super T><!--? super T--> predicate)</strong>
登入後複製

範例

import java.util.stream.Stream;
public class DropWhileMethodTest {
   public static void main(String args[]) {
      <strong>Stream</strong>.<strong>of</strong>("India", "Australia", "Newzealand", "", "England", "Srilanka")
      .<strong>dropWhile</strong>(o->!o.isEmpty())
      .forEach(System.out::print);
      System.out.println();
      <strong>Stream</strong>.<strong>of</strong>("India", "", "Australia", "", "England", "Srilanka")
      .<strong>dropWhile</strong>(o->!o.isEmpty())
      .forEach(System.out::print);
   }
}
登入後複製

輸出

<strong>EnglandSrilanka
AustraliaEnglandSrilanka</strong>
登入後複製

以上是Java 9中takewhile()和dropWhile()方法的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板