Advertisement
Guest User

Untitled

a guest
Jun 15th, 2015
281
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.50 KB | None | 0 0
  1. public class Speedtest {
  2.    
  3.     int numbers = 100000000;
  4.    
  5.     float[] x1=new float[numbers];
  6.     float[] y1=new float[numbers];
  7.     float[] x2=new float[numbers];
  8.     float[] y2=new float[numbers];
  9.     float[] distance=new float[numbers];
  10.    
  11.     Random r = new Random(new Date().getTime());
  12.    
  13.     @Test
  14.     public void testGenerateNumbers() {
  15.         for (int i = 0; i < numbers; i++) {
  16.             x1[i]=r.nextFloat();
  17.             y1[i]=r.nextFloat();
  18.             x2[i]=r.nextFloat();
  19.             y2[i]=r.nextFloat();
  20.         }
  21.  
  22.         testDistanceSpeed2();
  23.         testDistanceSpeedStrict();
  24.         testDistanceSpeed2();
  25.         testDistanceSpeedStrict();
  26.         testDistanceSpeed2();
  27.         testDistanceSpeedStrict();
  28.  
  29.     }
  30.     public void testDistanceSpeed2() {
  31.         long s1 = System.currentTimeMillis();
  32.         for (int i = 0; i < numbers; i++) {
  33.             distance[i] = distanceSq(x1[i], y1[i], x2[i], y2[i]);
  34.         }
  35.         long s2 = System.currentTimeMillis();
  36.         System.out.println("TIME: " + (s2 - s1));
  37.     }
  38.  
  39.     public strictfp void testDistanceSpeedStrict() {
  40.         long s1 = System.currentTimeMillis();
  41.         for (int i = 0; i < numbers; i++) {
  42.             distance[i] = distanceSqStrict(x1[i], y1[i], x2[i], y2[i]);
  43.         }
  44.         long s2 = System.currentTimeMillis();
  45.         System.out.println("TIME STRICT: " + (s2 - s1));
  46.     }
  47.  
  48.     public static float distanceSq(float x1, float y1,
  49.                                    float x2, float y2)
  50.     {
  51.         x1 -= x2;
  52.         y1 -= y2;
  53.         return (x1 * x1 + y1 * y1);
  54.     }
  55.     public strictfp static float distanceSqStrict(float x1, float y1,
  56.                                    float x2, float y2)
  57.     {
  58.         x1 -= x2;
  59.         y1 -= y2;
  60.         return (x1 * x1 + y1 * y1);
  61.     }
  62.  
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement