日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

String#repeat来到Java吗?

發布時間:2023/12/3 java 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 String#repeat来到Java吗? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

JDK-8197594 (“ String#repeat”)在其“描述”中包括以下內容:“長期以來,一直要求一種用于重復字符序列的String方法,沒有后續操作。” 可以在JDK-8197594的“問題鏈接”中找到有關String類中用于重復字符序列的方法的興趣,這些方法包括JDK-8055862 [“提供字符串重復方法”]和JDK-6984084 [“( str)n次重復java.lang.String的字符構造函數”]。 這兩個鏈接問題都描述了在String類中使用這種方法的動機。 進一步的證據包括在線問題,例如在Java 中重復字符串的 簡單方法 , 如何 在Java 中重復字符串“ n”次? , 在Java中重復字符串的簡單方法是什么? ,以及如何在Java編程中將字符串重復n次?

Guava通過其Strings.repeat(String,int)方法提供了此所需的行為,而Apache Commons Lang通過其StringUtils.repeat(String,int)提供了此功能。 此功能也可能在單個項目中實現了數百次或更多次 。 標準java.lang.String.repeat(String, int)方法的可用性可以替代所有這些方法。

關于JDK-8197594的core-libs-dev JDK郵件列表的討論提供了一些其他有趣的細節,這些細節可能會添加到Java的未來版本中。

Jim Laskey的消息中提到了一個有趣的觀點,他在其中描述了該方法將提供的潛在性能改進。 具體來說,Laskey寫道:“以jmh運行性能……表明這些方法比StringBuilder等效方法要快得多”,Laskey將此歸因于“內存分配減少了”,“字符到字節數組的轉換減少了”以及“金字塔復制與O相比更快( N)復制。” 由于這是開源的,在目前提出的實現是導致這些性能優勢提供 。 對于感興趣的人,上述兩個開放源代碼項目顯然已經提供了其源代碼[ Guava的Strings.repeat(String,int)和Apache Commons Lang的String repeat(String,int) ]。

Brian Goetz發布了在標準API中添加諸如String.repeat的方法的第二個原因:將通過語句實現的通用功能轉換為可組合的表達式。 Goetz解釋說:“我對這類方法的主要動機是,將需要執行的內容作為_statements_(循環,if-then等)并將它們轉換為_expressions_,這主要不是因為它們更緊湊,而是因為它們變得_composible_ 。” Goetz之前已經描述了表達式的優點,這是JEP草案中與Java中的開關表達式相關的主要動機之一。

用java.lang.String上的一種新方法將字符序列重復指定的次數不會像其他許多新的API新增功能和新的語言功能那樣繁重,但是它可以提供一些優點,例如不需要第三次方或自定義實現,改進的性能以及常用實現行為的標準化表示形式。 在撰寫本文時, JDK-8197594未與特定的Java版本關聯,而是標記為“ tbd_feature ”。

翻譯自: https://www.javacodegeeks.com/2018/02/stringrepeat-coming-java.html

總結

以上是生活随笔為你收集整理的String#repeat来到Java吗?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。