在Java中處理邊界情況,通常需要考慮以下幾個方面:
public boolean isValidInput(String input) {
if (input == null || input.trim().isEmpty()) {
return false;
}
// 檢查數字是否在有效范圍內
int number = Integer.parseInt(input);
return number >= 0 && number <= 100;
}
Optional
類或者檢查方法參數是否為null
。public Optional<String> getOptionalString(String input) {
return Optional.ofNullable(input);
}
public void processString(String input) {
if (input != null) {
// 處理字符串
} else {
System.out.println("輸入為空");
}
}
IndexOutOfBoundsException
。使用for-each
循環或者size()
方法來獲取長度。int[] numbers = {1, 2, 3, 4, 5};
for (int i = 0; i < numbers.length; i++) {
System.out.println(numbers[i]);
}
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
for (int i = 0; i < names.size(); i++) {
System.out.println(names.get(i));
}
try-catch
語句捕獲可能的異常,并提供合適的處理邏輯。public void readFile(String fileName) {
try {
File file = new File(fileName);
// 讀取文件內容
} catch (FileNotFoundException e) {
System.out.println("文件未找到: " + fileName);
} catch (IOException e) {
System.out.println("讀取文件時發生錯誤: " + fileName);
}
}
@Test
public void testIsValidInput() {
assertTrue(isValidInput("100"));
assertFalse(isValidInput("101"));
assertFalse(isValidInput("abc"));
assertTrue(isValidInput(""));
}
總之,處理邊界情況的關鍵是提前預防和檢查,確保代碼在各種情況下都能正常運行。