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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

气味识别应用_解决气味

發布時間:2023/12/3 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 气味识别应用_解决气味 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

氣味識別應用

有時,我們在代碼庫中可能會遇到一些巨大的if語句。 這些語句必須維護并一次又一次地更改相同的代碼塊。 在if語句檢查變量是否屬于某個值范圍內的情況下,這也是常見的。

假設您有一個枚舉

public enum FoodType {FRUIT,VEGETABLES,RED_MEAT,WHITE_MEAT,FISH,DIARY,CERIAL }

而且您有一個功能可以提出一些建議

public String recommend(FoodType foodType) {if(foodType==FoodType.FISH||foodType==FoodType.RED_MEAT||foodType==FoodType.WHITE_MEAT) {//execute a procedure} else if(foodType==FoodType.FRUIT||foodType==FoodType.VEGETABLES) {//execute a procedure} else {//execute a procedure}}

如您所見,現在已做出決定。 該決定與碰巧屬于特定人群的某些類型的食物有關。
魚,紅肉和白肉對那些偏愛蛋白質的用戶有益,而水果和蔬菜更適合以纖維為基礎的飲食。
在將來的情況下,可能會增加該枚舉并添加更多的食物類型。 如果代碼塊必須更改。 同樣,如果在其他文件中使用了這種復雜的if語句,則必須更改每個文件。 不僅您將擁有巨大的if塊,而且還必須在每個文件上維護一個塊,這可能容易出錯。

為了避免這種情況,您可以將if語句的內容更改為一個函數。

package com.gkatzioura;import java.util.Arrays; import java.util.Collections; import java.util.HashSet; import java.util.Set;import static com.gkatzioura.FoodType.*;public class DietFilter {private static final Set FOODS_WITH_PROTEIN = Collections.unmodifiableSet(new HashSet(Arrays.asList(FISH,RED_MEAT,WHITE_MEAT)));private static final Set FOODS_WITH_FIBER = Collections.unmodifiableSet(new HashSet(Arrays.asList(FRUIT,VEGETABLES)));public static boolean proteinBased(FoodType foodType) {return FOODS_WITH_PROTEIN.contains(foodType);}public static boolean fiberBased(FoodType foodType) {return FOODS_WITH_FIBER.contains(foodType);}}

因此,我們沒有在if語句中添加每種食物類型的案例,而是創建了一個函數來檢查給定的參數是否屬于特定組。

因此,您的if語句將變為此。

public String recommend(FoodType foodType) {if(DietFilter.proteinBased(foodType)) {//execute a procedure} else if(DietFilter.fiberBased(foodType)) {//execute a procedure} else {//execute a procedure}}

如果將更多食物類型添加到枚舉中,則開發人員將只需更改集合的結構并添加其他食物類型。
這將比更改代碼的多個部分容易得多,并且可讀性更高。

翻譯自: https://www.javacodegeeks.com/2018/07/fixing-if-smell.html

氣味識別應用

總結

以上是生活随笔為你收集整理的气味识别应用_解决气味的全部內容,希望文章能夠幫你解決所遇到的問題。

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