虽然我想要做什么是非常明显的,但我宁愿不要被告知如何得出最终结果,即使我的处理方式是错误的(尽管有提示,我们将不胜感激) 。无论如何...
以字符串格式的数字的 8 位二进制表示形式“01110101”为例。如果我反转数字,我会得到“10101110”。如果我想找到每个 1 的位置并将它们添加到数组中,我该怎么做?我尝试使用indexOf('1'),但它不断返回0或1作为索引。
编辑:我所说的最终结果是指我试图通过这一切来实现的总体目标,而不是我要问的问题。我只是想阻止有人介入并告诉我如何从二进制转换为十进制,而不是回答我当前的问题......
Edit2:好的,我会更具体。基本上,我试图获取一个二进制数,将它们翻转并获取它们的位置并将它们添加到数组中。然后我将尝试迭代该数组,对每个位置取 2 次方并将它们相加。也许不是从二进制转换为十进制的最有效方法,但这就是我想出的方法。
最佳答案
http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#indexOf(int,%20int)
找到第一个,将其作为寻找下一个的起点,起泡沫,冲洗,重复。
关于java - 查找字符串中某个重复字符/子字符串的每个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21147673/