博翔科技為專業機械設備歐規/台灣TS標章/美規及半導體設備SEMI S2輔導顧問公司

博翔對於各類機械的安全技術 安全開關 安全模組 安全繼電器模組 安全繼電器 緊急停止 安全元件 歐盟電路設計 安全迴路 安全設計

由於科技的進步,各種無線通訊設備及數位裝置技術的高度發展,電磁干擾已成為電子時代中世界各國關注的問題。

機械產品的製造為迎向消費市場需求,亦朝向高速度、高精度、自動化且大量使用數值控制而使機械產品電磁干擾問題更加複雜

而博翔科技協助您解決相關安全技術問題以專業級檢測與規畫經驗並協助各種機械廠快速獲得相關認證

邀請您一起邁向世界的安全技術頂端

請立即點擊上方圖片了解更多細節吧!

 

好文分享

 

想不想學習裝 B 式的 Java 騷操作花式寫法? 沒錯,一文交會你! 1、集合初始化 集合的創建、賦值一步到位,想不想學? 來,上邊跟我一起畫個 List,在你下邊畫一個Map…… ... 哈哈,高大上的寫法,棧長以前寫過,寫法雖然是很裝X,然而並沒有什麼卵用。 2、算術 ... 注意到上面size的寫法沒有? 明明可以寫成: final int size = 256; 他非要寫成: final int size = -(-128) + 127 + 1; 這麼裝 B 的寫法來自 JDK 包裝類java.lang.Byte裡面的靜態方法。 為什麼要這麼寫呢? 這樣的寫法在 JDK 裡面有很多,大家看到這些寫法都會覺得很奇怪,Java技術棧微信群里、知識星球裡面有曾有粉絲問我這是為什麼。 真正緣由無從考察,但棧長我覺得寫 JDK 的大神其實就想告訴你,Byte 的 256 個數是由 -128 ~ 127 這個範圍組成的,起到一個標識數字範圍的作用而已。至少 Byte 為什麼取這個範圍,為什麼byte取值-128~127??這篇文章可以解密。 如果你知道其中的更多道道,歡迎留言分享! 3、移位 ... 這兩個變量來自java.util.HashMap源碼,你可能也非常好奇為什麼不直接寫成數字,要弄一個移位騷操作? 這是在告訴開發者,HashMap 的容量大小必須是 2 的冪次,不然會造成空間浪費。另外,HashMap 容量為什麼總是為 2 的次冪?這篇推薦看下。 4、複製變量 ... 以上同樣來自java.util.HashMap的源碼,為什麼不直接用values: ... 而要重新定義一個vs來繞一個彎呢? 這樣寫不是更簡單麼? JDK裡面大量這樣的寫法,這是為什麼呢?! 那是因為操作局部變量要比讀取全局變量要更快,另外,我個人覺得還有一個好處,再申明一下局部變量,可以很明顯的看到這個變量的類型,而不要翻到上面或者用滑鼠移上去來看變量類型。 另外提一點,上面的複製變量再操作的方式讓我想到了CopyOnWriteArrayList,這也是讓當前變量不被其他線程改變保證當前線程變量一致性的一種方式。 寫 JDK 源碼的都是大神啊,透過源碼,我們能學到太多東西! 5、泛型 來看一段泛型的靈活運用: public <R> Observable<R> compose(Transformer<? super T, ? extends R> transformer) { return ((Transformer<T, R>) transformer).call(this); } 這個泛型方法寫得牛 X 吧,泛型 T、R、通配符(?)、上邊界(extends)和下邊界(super)都用上了! 常用的泛型含義: T - Type(類型) R - Result(結果) K - Key(鍵) V - Value(值) E - Element (元素) N - Number(數字) ? - 不確定類型 上面的泛型我們應該有常見到吧,邊界和通配符不懂的可以看下這篇文章吧:困擾我多年的Java泛型 和 ,終於搞清楚了。 泛型要學會用,學好能裝B。 6、Lambda Lambda 表達式這是 Java 8 裡面添加的新特性,用來簡化匿名內部類以及結合函數式接口編程用的。 如下面創建線程的示例: ... 三個不同的寫法,我們再也不用寫new Runnable()的一大堆 的匿名內部類了,是不是很清爽了! 如果你還不會用Lambda表達式,那真的 OUT 了,可以關注微信公眾號:Java技術棧,在後臺回覆:新特性,我已經寫了一大堆教程了。 下面是一個Lambada真實案例: ... 上述示例省去了 newCommandLineRunner的匿名內部類的過程。 7、函數式編程 上面有提到函數式編程,這是 Java 8 裡面添加的新特性,我之前在公眾號里已經寫過很多 Java 新特性的教程,這也不是新玩法了,已經被玩爛了。 來看一個真實的案例,來自 Spring Boot 的郵件發送自動配置: ... 第一次看到這段代碼的時候,我內心是拒絕的,很難理解。 上面的 from 和 to 方法分別用到了Supplier和Consumer函數式接口,還用到了雙冒號::結合使用,諱莫如深,還能結合Lambda表達式使用。 函數式編程很厲害,雖然會用,但到現在我也覺得很高深,可讀性和可理解性太差了,但是,裝 X 必學、必用。 8、流關閉 ... 沒錯,你看到的這個關閉流騷操作是 Java 9 的新語法糖,較 Java 7 又簡化了try-with-resources用法,裝 X 的姿勢越來越多了。 關於try-with-resources的詳細介紹及演進過程,大家可以閱讀這篇文章:JDK9新特性實戰:簡化流關閉新姿勢,或者可以關注微信公眾號:Java技術棧,在後臺回復 "新特性" 獲取這篇文章完整版。 不知道的可能上來就一頓罵了,你流關閉動作在哪,為什麼不關閉流,多跟著棧長學點新知識吧,哈哈。 9、類型推斷 關注Java技術棧公眾號的老讀者應該都看過,Java 10 剛出來的時候,我寫過兩篇新特性文章: Java 10的10個新特性,將徹底改變你寫代碼的方式! Java 10 實戰第 1 篇:局部變量類型推斷 來,我再挑兩個示例來欣賞下: 示例1: var javastack = "javastack"; 示例2: private static void testLoop() { for (var i = 0; i < 3; i++) { for (var m = 10; m < 15; m++) { System.out.println(i + m); } } } 這樣寫會不會被打?也太省事了! 類型推斷出來後,都說 Java 越來越像 Javascript 了,其實就是 Java 10 增加的一種語法糖而已,在編譯期間會自動推斷實際類型,其編譯後的字節碼和實際類型一致。 10、模式匹配 instanceof模式是匹配這是 Java 14 推出來的新特性: if (object instanceof Kid kid) { // ... } else if (object instanceof Kiddle kiddle) { // ... } 匹配後直接創建對象和賦值直接拿來用,不需要再添加強制轉換的代碼,大大提高了可讀性和安全性。具體可以看這篇文章:Java 14 之模式匹配,非常贊的一個新特性! 轉載|:https://mp.weixin.qq.com/s/WcJh8A8puLIRluqRjHx-kw Java技術棧

 

TTT77941YYDDEE156365GG

 

 

文章來源取自於:

 

 

 

每日頭條 https://kknews.cc/code/x49x3jr.html

 

 

如有侵權,請來信告知,我們會立刻下架。

 

 

DMCA:dmca(at)kubonews.com

 

 

聯絡我們:contact(at)kubonews.com

 


新竹HS5系列用滑插式促動器桃園安全限動開關設計與電路設計桃園空氣清淨機安全迴路設計桃園快煮壺/熱水瓶安全迴路設計新竹大蘑菇頭型緊急停止開關
台南停止用開關 桃園風扇符合歐盟歐規電路設計 輔導安全迴路設計的符合歐規電路的CE認證公司台南雙手控制器安全繼電器 台中YW系列緊急停止用按鈕開關﹝組合型﹞ 機械操作標示貼紙,工安標示貼紙製作批發與設計新竹排油煙機安全迴路設計 高雄XW系列緊急停止用按鈕開關﹝組合型﹞ 安全開關符合符合歐規電路的CE認證公司台中XA系列緊急停止用按鈕開關﹝一體型﹞ 新竹緊急停止按鈕開關設計與電路設計 安全開關符合符合歐規電路的CE認證公司

 

arrow
arrow
    全站熱搜

    美麗無極限 發表在 痞客邦 留言(0) 人氣()