摘要:讓程序的計算發生在真正使用到的時候,而不是提前計算好所有數據,因為有些場景下,并不是所有數據都會用到比如棋局游戲,沒必要計算所有的步驟構造器的參數傳入的是一個方法,但該方法的執行只發生在需要的時候這里只是一個,并不是效率最高的版本
讓程序的計算發生在真正使用到的時候,而不是提前計算好所有數據,因為有些場景下,并不是所有數據都會用到(比如棋局游戲,沒必要計算所有的步驟)
LazyList構造器的tail參數傳入的是一個方法,但該方法的執行只發生在需要的時候(這里只是一個demo,并不是效率最高的版本)
public class LazyListimplements MyList { final T head; final Supplier > tail; public LazyList(T head, Supplier > tail) { this.head = head; this.tail = tail; } public T head() { return head; } public MyList tail() { return tail.get(); } public MyList filter(Predicate p) { return isEmpty() ? this : p.test(head()) ? new LazyList<>(head(), () -> tail().filter(p)) : tail().filter(p); } @Override public boolean isEmpty() { return false; } } class Demo { public static LazyList from(int n) { return new LazyList (n, () -> from(n + 1)); } public static MyList primes(MyList numbers) { return new LazyList<>(numbers.head(), () -> { return primes(numbers.tail().filter(n -> n % numbers.head() != 0)); }); } public static void main(String[] args) { LazyList numbers = from(2); int two = primes(numbers).head(); int three = primes(numbers).tail().head(); int five = primes(numbers).tail().tail().head(); System.out.println(two + " " + three + " " + five); } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/68085.html
摘要:邊緣計算與連接設備對于邊緣計算來說,很大一部分轉變可能都歸功于用戶和平臺的分散性,以及近些年物聯網市場的興起,數據中心對于物聯網設備和訪問該數據的用戶群體能夠非常好的提供支撐。邊緣計算的概念是滿足用戶所在的位置的需求。對于當今的企業級市場來說,數據已經成為了最為珍貴的資源,尤其是伴隨著現在很多企業都已經開始進行數字化轉型,使得整個社會和經濟對于數據產生了一種依賴性,我們都知道,互聯網基礎設施...
摘要:今天我們在跟或谷歌等設備通話時,它們通常在不到一秒內做出響應,但將來它可能更快。十大技術預測持久記憶存儲技術英特爾最近宣布推出持久存儲器,它看起來像任何標準的,但能存儲級別的數據,甚至能在斷電時保存數據。就像電力一樣,無處不在,又肉眼不可見。很快,我們就能見證實時計算的廣泛應用,Redis Labs公司研發主管Madhukar Kumar表示。科技行業不同周期的熱點各有側重,比如互聯網、云計...
摘要:摘要第九屆中國數據庫技術大會,阿里云高級技術專家架構師封神曹龍帶來題為大數據時代數據庫云架構生態實踐的演講。主要內容有三個方面首先介紹了業務挑戰帶來的架構演進,其次分析了及生態,最后分享了大數據數據庫的實際案例。數據備份及恢復。 摘要: 2018第九屆中國數據庫技術大會,阿里云高級技術專家、架構師封神(曹龍)帶來題為大數據時代數據庫-云HBase架構&生態&實踐的演講。主要內容有三個方...
閱讀 712·2021-11-22 13:52
閱讀 1517·2021-09-27 13:36
閱讀 2818·2021-09-24 09:47
閱讀 2171·2021-09-22 15:48
閱讀 3600·2021-09-22 15:39
閱讀 1460·2019-08-30 12:43
閱讀 2917·2019-08-29 18:39
閱讀 3181·2019-08-29 12:51