Java異常退出條件的判斷示例代碼
無論是功能性代碼還是算法性代碼,程序都是一系列流程的合集
既然是流程就分為:一般流程和異常流程;
一般流程保證了基本功能;
異常流程則是對程序穩(wěn)定性的保證,不能因?yàn)橐恍┓欠ㄝ斎耄?xiàng)目就掛了;
注意,布爾表達(dá)式的先后順序,有時(shí)不可以交換
if (null == instance || instance.isEmpty())
0. 常見異常退出條件
參數(shù)為空;
表示長度,表示索引的整型為負(fù)數(shù),或者超出待索引數(shù)組或容器的范圍;
1. String 的 startsWith 函數(shù)
首先來看 String 類為 startsWith 函數(shù)提供的對外接口,有如下形式的倆中函數(shù)重載:
public Boolean startsWith(String prefix, int toffset);
public Boolean startsWith(String prefix) {
starsWith(prefix, 0);
// 調(diào)用的是雙參的實(shí)現(xiàn)
}
傳遞進(jìn)來的參數(shù)的含義分別為,prefix:待匹配的字符串,toffset 當(dāng)前字符串開始比較時(shí)的偏移,對于參數(shù)應(yīng)當(dāng)滿足:
toffset >= 0;
this.value.length >= prefix.length + toffset
也就是:
char[] ta = value;
int pc = prefix.length;
if ((toffset < 0) || (toffset > value.length-pc))
{
// 負(fù)數(shù)形式的偏移,
// 偏移加前綴的長度大于此字符串的長度;
return false;
}
完整源碼如下:
public Boolean startsWith(String prefix, int toffset) {
char ta[] = value;
int to = toffset;
char pa[] = prefix.value;
int po = 0;
int pc = prefix.value.length;
// Note: toffset might be near -1>>>1.
if ((toffset < 0) || (toffset > value.length - pc)) {
return false;
}
while (--pc >= 0) {
if (ta[to++] != pa[po++]) {
return false;
}
}
return true;
}
總結(jié)
以上就是本文關(guān)于Java異常退出條件的判斷示例代碼的全部內(nèi)容,洗完對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:Java編程異常處理最佳實(shí)踐【推薦】、Java編程中的檢查型異常與非檢查型異常分析等,有什么問題可以隨時(shí)留言,小編會及時(shí)回復(fù)大家的。
相關(guān)文章
springboot中的controller注意事項(xiàng)說明
這篇文章主要介紹了springboot中的controller注意事項(xiàng)說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
springboot動態(tài)定時(shí)任務(wù)的實(shí)現(xiàn)方法示例
這篇文章主要給大家介紹了關(guān)于springboot動態(tài)定時(shí)任務(wù)的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
用Java集合中的Collections.sort方法如何對list排序(兩種方法)
本文通過兩種方法給大家介紹java集合中的Collections.sort方法對list排序,第一種方式是list中的對象實(shí)現(xiàn)Comparable接口,第二種方法是根據(jù)Collections.sort重載方法實(shí)現(xiàn),對collections.sort方法感興趣的朋友一起學(xué)習(xí)吧2015-10-10
springboot bean掃描路徑的實(shí)現(xiàn)
這篇文章主要介紹了springboot bean掃描路徑的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
Java實(shí)現(xiàn)讀取html文本內(nèi)容并按照格式導(dǎo)出到excel中
這篇文章主要為大家詳細(xì)介紹了如何使用Java實(shí)現(xiàn)讀取html文本提取相應(yīng)內(nèi)容按照格式導(dǎo)出到excel中,文中的示例代碼講解詳細(xì),需要的可以參考下2024-02-02
Java正則表達(dá)式之split()方法實(shí)例詳解
這篇文章主要介紹了Java正則表達(dá)式之split()方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了split方法的功能、使用方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-03-03

