考虑两个数字的二进制表示:
5: “101”
10: “1010”
“101”
是“1010”
的子字符串,但“00”
和“111”
不是。
是否可以通过数学查找包含特定子字符串的数字?
答案 0 :(得分:1)
不确定您要在这里完成什么,但向左移位与乘以2 相同。因此,如果你想获得具有相同“子串”的“下一个”整数,你只需乘以2。
3: 11
*2=
6: 110
18: 10010
*2=
36: 100100
答案 1 :(得分:0)
对你的方法进行一些改进:P但你可以将数字转换为字符串并使用某种find方法。它不通过数学做到这一点?但它完成了工作
public static void main(String[] args){
Integer myNum = 1010;
String myNumString = Integer.toString(myNum);
System.out.println(myNumString.matches(".*10.*"));
}