'e anlatılmasa bile, bu dizge karşılaştırma döngüsünün neden dizide = o değerde hiçbir değer bulunmadığını bulduktan sonra tekrar döneceğini anlayamıyorum. Gördüğünüz gibi döngü tekrar geçmesi olmaz bu yüzdenDöngü için kendini bir kez, bir kez bile yinelemedim bile,
Query p = new Query(section).addSort("Login", Query.SortDirection.DESCENDING) ;
PreparedQuery qp = datastore.prepare(p);
int listSize = 0;
for(Entity amount : qp.asIterable()){
listSize++;
}
for (Entity result2 : qp.asIterable()) {
if (breakOff==true) {
break;
} else {
System.out.println("1stloop size is " + size + result2.getProperty("Login"));
MyBean temp2 = new MyBean();
temp2.setData((String) result2.getProperty("Login"));
Query q = new Query("sent").addSort("Login", Query.SortDirection.DESCENDING);
PreparedQuery pq = datastore.prepare(q);
int i = 0;
for (Entity result : pq.asIterable()) {
i++;
System.out.println("2ndloop is "+ result.getProperty("Login"));
MyBean temp = new MyBean();
temp.setData((String) result.getProperty("Login"));
if (temp.getData().equals(temp2.getData())) {
System.out.println("broken");
break;
} else if (i >= size) {
sentNum.setData(temp2.getData());
Entity logins = new Entity("sent");
logins.setProperty("Login", temp2.getData());
datastore.put(logins);
System.out.println("sizematch wrote " + temp2.getData());
breakOff = true;
} else {
System.out.println("increase" + i);
}
}
}
}
, ben == true bir BREAKKapalı diyoruz, ancak her zaman. Tam olarak bir kere.
Bu, kodunuzun yalnızca küçük bir parçacığı olduğundan, sahip olduğunuz sorunu çözmeye çalışmak için buradan çıkacak yeterli bilgi olduğunu sanmıyorum. – TechnoCF
Peki, "breakOff = true;" ifadesinin, döngünün ilk yinelemesine basıp vurmadığını görmek için bir hata ayıklayıcı kullandınız mı? Söylediklerinize dayanarak, ikinci iterasyona vurulduğu oldukça açıktır. Bir hata ayıklayıcı kullanın ve koşullarınızı düzeltin. –
Hata ayıklayıcısında satır satır nasıl giderim? Tek gördüğüm breakOff = true. –