2013年3月23日 星期六

[演算法]字串處理indexOfvalue與substring的混合運用

最近一直在寫code,常常trace一些code、傳一些訊息、也過濾一些訊息

假設今天要傳值後面帶參數
可以理解成17:21,17是傳的值;冒號後面的21是要傳的參數
但值有可能是5或100
即會變成5:21  100:21
當然我們分隔不一定會用:,有可能用= 或是 @ 等,anyway.

取:前的值
無疑的我們可以用substring來做,若17:21assign到一個字串變數str
則我們可以用str.substring(0,)來取需要的字串
但問題來了17是兩位我們從第一位從零開始算即是str.substring(0,1)
但若傳的值是100呢則只會取到10這個值(後面的0就被截掉了)

所以這邊有個方法:

int Index = str.indexOf(":");
我們可以使用indexOf來找到:的位置,並儲存到型態為int的Index變數中,這樣就不會無法應變位數變更的情況了。

完整版:
int Index = str.indexOf(":");
String NO = str.substring(0 , Index);
這樣就取出來了!

取:後的值
當存完前面的變數之後,以:隔開之後的參數我們也必須做取出的處理並儲存。

沒有留言:

張貼留言