我检查互联网和谷歌有关如何打破一个while循环并再次检查它但似乎没有打破。我失去了希望再试试
我运行此代码
int i = 0;
while( i <= 1236){
System.out.println(i + " svarer til: "+md5(Integer.toString(i)));
if(md5kryp == md5(Integer.toString(i))){
System.out.println("Den dekryperet kode er: " + i);
System.out.println("Den svare til den indtastede " +md5kryp);
break;
}
i++;
}
我系统打印出来检查加密“i”是否与加密的md5匹配。它运行它。但不会打破它。
我处于81dc9bdb52d04dc20036dbd8313ed055(即数字1234),而md5kryp始终是81dc9bdb52d04dc20036dbd8313ed055。所以它匹配,但它运行虽然它并没有停止。所以断线不起作用
答案 0 :(得分:3)
md5kryp == md5(Integer.toString(i))
使用equals
。
答案 1 :(得分:1)
md5kryp == md5(Integer.toString(i)
你不能像这样比较Java中的字符串。 这个比较会比较,如果这是同一个对象(伙计们,如果我错了,请纠正我)。
作为比较,您真正需要的是String-Class中的方法:
md5kryp.equals(md5(Integer.toString(i))