Almost all Java applications require looping at some point or other. Even the slightest improvement in looping time can make a huge performance difference. Because the size of an array doesn’t change while looping, there is no need to check the length every time, for example:
for (int i=0;i
In fact, going through the loop counting downwards instead of upwards is faster:
for (int i=arr.length-1;i>=0;i —)
In JDK 1.1 and 1.2 there is minor performance difference between counting up and counting down. But with the 1.3 release, the speed difference is greater. To test this on your system and JDK, run the program below:
public class TimeLoop { public TimeLoop() {int a =2;long startTime =System.currentTimeMillis();for (int i=0,n=Integer.MAX_VALUE;i=0 ; i--){a =-a;}long endTime =System.currentTimeMillis();System.out.println("Increasing Loop:"+(midTime -startTime));System.out.println("Decreasing Loop:"+(endTime -midTime)); }public static void main (String args []){TimeLoop t=new TimeLoop(); }}