在我的應用程序開發一個性能問題來到我的腦海:什麼是從字符串檢索值的最快方法?
我有很多的數據線,可以看起來像這樣:
- ANG:-0.03,0.14,55.31
- !ANG:-0.03,-0.14,305.31
- ANG:-234.03,-0.14,55.31 一般
- :ANG:浮球,浮球,浮球
在這些線條之間還存在「損壞」的線條 - 它們不是以開頭的!或者太短/有額外的跡象等等。
爲了檢測在開始時損壞,我只是用
if(myString.charAt(0) != '!')//wrong string
我能做些什麼,以檢測在年底受損線路線?提及我非常重要的一點是,我不僅需要檢查這條線是否正確,而且還要讓這3個浮點數在以後使用。
我發現三個選項是:
- 使用正則表達式
- 分兩次(第一次 「:」 和第二 「」)和count元素
- 使用掃描儀類
我不確定哪一個(或者也許還有其他)方法從性能角度來看是最好的。你能給我一些建議嗎?
編輯:
一些意見,我看,這是值得寫後如何破損線的外觀:
- NG:-0.03,0.14,55.31
- .14,55.31 !
- ANG:-0.03,0.14,
- A,-0.02,-0.14,554,-0.12,55
這是相當困難談論的行數,因爲我從其他設備閱讀,讓他們讓我在用頻率爲50Hz時得到的20行數據包。
什麼我迄今爲止的發現是用掃描儀的大缺點 - 每行我需要創建新的對象,並在一段時間後我的設備開始變得短上的資源。
嘗試你的三個選項,並找出哪一個最好 – Shar1er80
你到底意味着什麼?給一個樣本破壞字符串 –
所有這些選項都可以工作,但這裏的答案也取決於你的「完好無損」的行,所以你可以發佈一些? – DoubleMa