實驗樓第10期java樓賽——實現String工具類

題目

小樓同學是實驗樓剛入職的 Java 程序員。開發工作中,經常需要判斷多個輸入是否為空問題,Java 中判斷空的方法寫起來太長,字段一多代碼維護就變的很困難,于是小樓同學決定寫一個判斷字符串為空的工具類。結合平時的使用情況他定義該類有以下兩個靜態方法:

  1. allIsNotNull 接收 N(1<=N) 個 String 類型參數,返回是否都不為 null;
  2. allIsNotEmpty 接收 N(1<=N) 個 String 類型參數,返回是否都不為 null 且都不為空串;

目標

補全類 StringUtils 的兩個靜態方法,使其能正常按定義判斷字符串。

提示

  1. 注意處理異常情況;
  2. 自測要充分,可變參數的多種情況都要考慮到;

知識點

可變參數

題目代碼

public class StringUtils {
    public static boolean allIsNotNull(String...s) {
        return false;
    }
    
    public static boolean allIsNotEmpyty(String...s) {
        return false;
    }
}

解決思路

一開始做好了提交,一直顯示錯誤。然后自己寫了幾個測試用例都過了,聯想到題目提示要處理異常,就是試著調用StringUtils.allIsNotNull(null),才發現要處理可變參數要進行判空....;

我的答案代碼

public class StringUtils {
    public static boolean allIsNotNull(String...s) {
        if (s == null || s.length == 0) { // 容易忽略的地方
            return false;
        }
        for (int i = 0; i < s.length; i++) {
            if (s[i] == null) {
                return false;
            }
        }
        return true;
    }

    public static boolean allIsNotEmpyty(String...s) {
        if (s == null || s.length == 0) { // 容易忽略的地方
            return false;
        }
        for (int i = 0; i < s.length; i++) {
            if (s[i] == null || s[i].equals("")) {
                return false;
            }
        }
        return true;
    }
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容