<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Java – 日期流 > 原文: [https://howtodoinjava.com/java9/stream-dates-datesuntil/](https://howtodoinjava.com/java9/stream-dates-datesuntil/) 對于 Java 開發人員而言,日期和時間處理一直是一個痛苦的領域。 Java 8 中添加的[新的 Date-Time API ](//howtodoinjava.com/java8/date-and-time-api-changes-in-java-8-lambda/)更改了在 Java 中與日期進行交互的方式。 這是一項非常強大且急需的改進。 唯一缺少的是獲得日期的[流](//howtodoinjava.com/java8/java-8-tutorial-streams-by-examples/),在兩個后續日期之間存在一些共同的[差異](//howtodoinjava.com/java8/calculate-difference-between-two-dates-in-java/)(盡管有可能,但沒有簡便的方法)。 Java 9 引入了一種新方法[`LocalDate.datesUntil()`](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html),該方法可以提供日期流。 使用`datesUntil()`可以輕松創建具有固定偏移量的日期流。 ## 1\. `LocalDate.datesUntil()`的語法 此方法有兩種重載形式: ```java Stream<LocalDate> datesUntil(LocalDate end) Stream<LocalDate> datesUntil(LocalDate end, Period step) ``` 第一個版本(即不帶`Period`)內部調用帶有`Period.ofDays(1)`的第二個方法,并生成日期流,兩者之間相差 1 天。 ## 使用`LocalDate.datesUntil()`的日期流示例 創建日期流非常簡單明了。 ```java import java.time.LocalDate; import java.time.Period; import java.util.List; import java.util.stream.Collectors; public class Java9StreamExamples { public static void main(String[] args) { System.out.println( getDaysInJava9(LocalDate.now(), LocalDate.now().plusDays(10)) ); System.out.println( getDaysInJava9Weeks(LocalDate.now(), LocalDate.now().plusWeeks(10)) ); } //Stream of dates with 1 day difference public static List<LocalDate> getDaysInJava9(LocalDate start, LocalDate end) { return start.datesUntil(end).collect(Collectors.toList()); } //Stream of dates with 1 week difference public static List<LocalDate> getDaysInJava9Weeks(LocalDate start, LocalDate end) { return start.datesUntil(end, Period.ofWeeks(1)).collect(Collectors.toList()); } } Output: [2017-07-31, 2017-08-01, 2017-08-02, 2017-08-03, 2017-08-04, 2017-08-05, 2017-08-06, 2017-08-07, 2017-08-08, 2017-08-09] [2017-07-31, 2017-08-07, 2017-08-14, 2017-08-21, 2017-08-28, 2017-09-04, 2017-09-11, 2017-09-18, 2017-09-25, 2017-10-02] ``` ## 2\. Java 8 中的日期流 如果您仍未使用 Java 9,則可以使用以下給定的方法生成 Date 流。 該代碼與 [Java 8](//howtodoinjava.com/java-8-tutorial/) 兼容。 ```java import java.time.LocalDate; import java.time.Period; import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; public class Java9StreamExamples { public static void main(String[] args) { System.out.println( getDaysInJava8(LocalDate.now(), 10) ); } //Stream of dates with 1 day difference public static List<LocalDate> getDaysInJava8(LocalDate start, int days) { return Stream.iterate(start, date -> date.plusDays(1)) .limit(days) .collect(Collectors.toList()); } } Output: [2017-07-31, 2017-08-01, 2017-08-02, 2017-08-03, 2017-08-04, 2017-08-05, 2017-08-06, 2017-08-07, 2017-08-08, 2017-08-09] ``` 將我的問題放在評論部分。 學習愉快!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看