Of course it's different every time, that's the point, when you count in milliseconds its not the same time now and now
Change your code and use < or > depending on your need instead of == as the computer might skip to check the value you're looking for because it's going to fast so it might go from 1388395620883 to 1388395620892 , it's actually not skipping but it doesn't have time to print or check (or whatever) them all.
try to print this System.currentTimeMillis()
in an infinite loop to see how it goes, you'll see it cannot "print that fast"