儘管我試圖做的事情非常明顯,但我並不希望被告知如何提出最終結果,即使我要去的方式是錯誤的(提示雖然會被讚賞)。無論如何...查找字符串中某個重複字符/子字符串中每一個的位置
例如,一個字符串格式的數字的8位二進制表示,「01110101」。如果我將這個數字倒過來,我會得到「10101110」。如果我想找到每個1的位置並將它們添加到一個數組中,我該如何去做呢?我試圖使用indexOf('1'),但它一直返回0或1作爲索引。
編輯:根據最終結果,我的意思是我試圖用所有這些完成的總體目標,而不是我所問的問題。我只是想阻止某人跳進來,準確地告訴我如何從二進制轉換爲十進制而不是回答我目前的問題...
編輯2:好的,我會更具體。基本上,我試圖拿一個二進制數字,翻轉它們並獲得這些數字的位置並將它們添加到數組中。然後,我將嘗試遍歷數組,將每個位置的力量加2並加起來。也許不是從二進制轉換爲十進制的最有效方式,但這是我想出的。
您對indexOf('1')的問題是它只返回該字符的第一次出現(如[String documentation](http://docs.oracle.com/javase/ 7 /文檔/ API /爪哇/郎/ String.html#的indexOf%28java.lang.String%29))。 這就是說,既然你不想有任何具體的答案,請嘗試用不同的方式來表示你的字符串。查看String文檔以查看可以在其上調用的方法。 – endorphins
提示提示charAt(index) – gtgaxiola
與其他人已經指出的一樣,您可以使用'string.charAt(index)'方法返回您指向的字符。你所要做的就是遍歷字符串的所有字符,並測試它們是1還是0 ..或者你可能期望什麼。但是,如果你想讓提示更加具體,我可以給你一些代碼當然 – GameDroids