不回傳 null:
null 問題:
反對 null 的參數:
高效率替代方案:
優化效能:
程式碼範例:
傳回 null 的錯誤方法:
// Exemplo incorreto public ListgetCheeses() { return cheesesInStock.isEmpty() ? null : new ArrayList(cheesesInStock); }
顧客待遇不足:
Listcheeses = shop.getCheeses(); if (cheeses != null && !cheeses.isEmpty()) { // Lógica para lidar com queijos disponíveis }
傳回空集合的正確方法:
// Exemplo correto public ListgetCheeses() { return cheesesInStock.isEmpty() ? Collections.emptyList() : new ArrayList(cheesesInStock); }
使用不可變的空集合:
public ListgetCheeses() { return cheesesInStock.isEmpty() ? Collections.emptyList() : new ArrayList(cheesesInStock); }
與空數組一起使用:
// Retorno de array vazio corretamente public Cheese[] getCheeses() { return cheesesInStock.toArray(new Cheese[0]); }
空數組的最佳化使用:
private static final Cheese[] EMPTY_CHEESE_ARRAY = new Cheese[0]; public Cheese[] getCheeses() { return cheesesInStock.toArray(EMPTY_CHEESE_ARRAY); }
結論:
永遠不要傳回 null:總是更喜歡空集合或陣列。這簡化了 API,防止錯誤,並且很少對效能產生負面影響。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3