Advertisement
IT-Academy

Java Polia

May 30th, 2015
267
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.51 KB | None | 0 0
  1.  
  2. import java.util.Arrays;
  3. import java.util.List;
  4. import java.util.Random;
  5.  
  6. public class Main {
  7.  
  8.     public static void main(String[] args) {
  9.  
  10.         Random mojaNahoda = new Random();
  11.  
  12.         // Triedenie poloziek pola - SORT
  13.         // Primitivy - Quick sort
  14.         // Rerencie - Merge sort
  15.         /* QS nie je stabilny t.j. pre rovnake vstupy
  16.          moze zmenit ich relativnu poziciu pocas triedenia
  17.          Ak mame zoradene pole, ostane bezo zmeny
  18.          Primitivy nemaju ziadnu identitu...
  19.          https://www.youtube.com/watch?v=ywWBy6J5gz8
  20.        
  21.          MS nepouzivat pri primitivach (nie je garantovane n * log(n))
  22.          Vyzaduje sa klonovanie pola. Pri referencnych typoch
  23.          sa vyzadauje viac pamati.
  24.          https://www.youtube.com/watch?v=XaqR3G_NVoo
  25.          */
  26.         System.out.println("Triedenie poloziek pola(int) - SORT:");
  27.         int[] poleCisel = {4, 1, 2, 9, 8};
  28.         System.out.println("0 prvok: " + poleCisel[0]);
  29.  
  30.         Arrays.sort(poleCisel);
  31.         // Arrays.
  32.         for (int i = 0; i < poleCisel.length; i++) {
  33.             System.out.print(poleCisel[i] + " ");
  34.         }
  35.  
  36.         System.out.println("\nTriedenie poloziek pola(String) - SORT:");
  37.         String[] klienti = {"Xavier", "Adam", "Karol"};
  38.         Arrays.sort(klienti);
  39.  
  40.         for (String s : klienti) {
  41.             System.out.print(s + " ");
  42.         }
  43.  
  44.         System.out.println("\n\nNaplnenie prazdneho pola cislom - FILL:");
  45.         int[] tmp = new int[10];
  46.  
  47.         Arrays.fill(tmp, 1);
  48.  
  49.         for (int i = 0; i < tmp.length; i++) {
  50.             System.out.print(tmp[i] + " ");
  51.         }
  52.  
  53.         System.out.println("\nNaplnenie prazdneho pola cislom od konkretnej pozicie - FILL:");
  54.         int[] pomocne = new int[10];
  55.         Arrays.fill(pomocne, 5, 8, 2);
  56.  
  57.         for (int i = 0; i < pomocne.length; i++) {
  58.             System.out.print(pomocne[i] + " ");
  59.         }
  60.  
  61.         System.out.println("\nNaplnenie prazdneho pola nahodnym cislom - FILL:");
  62.         for (int i = 0; i < pomocne.length; i++) {
  63.             //pomocne[i] = (int) (Math.random() * 100);
  64.             pomocne[i] = mojaNahoda.nextInt(100);
  65.         }
  66.  
  67.         for (int i = 0; i < pomocne.length; i++) {
  68.             System.out.print(pomocne[i] + " ");
  69.         }
  70.  
  71.         System.out.println("\n\nPorovnanie 2 poli - EQUALS:");
  72.  
  73.         int[] policko1 = new int[4];
  74.         int[] policko2 = new int[5];
  75.  
  76.         Arrays.fill(policko1, 1);
  77.         Arrays.fill(policko2, 1);
  78.  
  79.         System.out.println("Su rovnake? -> " + Arrays.equals(policko1, policko2));
  80.  
  81.         System.out.println("\nKopirovanie pola - COPYOF:");
  82.         int[] policko3 = Arrays.copyOf(policko1, 3);
  83.  
  84.         for (int i = 0; i < policko3.length; i++) {
  85.             System.out.print(policko3[i] + " ");
  86.  
  87.         }
  88.  
  89.         System.out.println("\nKopirovanie casti pola - COPYOFRANGE:");
  90.  
  91.         Arrays.fill(policko1, 3);
  92.         Arrays.fill(policko2, 4);
  93.  
  94.         policko3 = Arrays.copyOfRange(policko1, 2, 5);
  95.  
  96.         for (int i = 0; i < policko3.length; i++) {
  97.             System.out.print(policko3[i] + " ");
  98.  
  99.         }
  100.  
  101.         //Arrays.
  102.         System.out.println("\n\nZiskanie Hashu pola - HASHCODE:");
  103.  
  104.         System.out.println("Hash policko1: " + Arrays.hashCode(policko1));
  105.         System.out.println("Hash policko3: " + Arrays.hashCode(policko2));
  106.  
  107.         System.out.println("\nKonvertovanie pola na zoznam - ASLIST:");
  108.         List<String> mojZoznam = Arrays.asList("Adam", "Karol", "Fero");
  109.  
  110.         for (int i = 0; i < mojZoznam.size(); i++) {
  111.             if (i == 0) {
  112.                 System.out.print("Vypisanie zoznamu (FOR): ");
  113.             } else {
  114.                 System.out.print(mojZoznam.get(i) + " ");
  115.             }
  116.         }
  117.  
  118.         int i = 0;
  119.         System.out.println("");
  120.         for (String j : mojZoznam) {
  121.             if (i == 0) {
  122.                 System.out.print("Vypisanie zoznamu (SHORT-FOR): ");
  123.             } else {
  124.                 System.out.print(mojZoznam.get(i) + " ");
  125.             }
  126.  
  127.             i++;
  128.         }
  129.  
  130.         System.out.println("\nVypisanie zoznamu (priamo):" + mojZoznam);
  131.         System.out.println("\nKonvertovanie pola na String - TOSTRING:");
  132.  
  133.         String pomocnyString = Arrays.toString(poleCisel);
  134.         System.out.println(pomocnyString);
  135.  
  136.         System.out.println("\nVyhladanie prvku - BINARYSEARCH:");
  137.         // Musis mat zoradene pole!!!
  138.  
  139.         System.out.println("Hladanie cislo 4 je na "
  140.                 + Arrays.binarySearch(poleCisel, 4) + " indexi.");
  141.  
  142.         System.out.println("Vyhladanie prvku od urcitej pozicie - BINARYSEARCH:");
  143.         System.out.println("Hladanie cislo 8 je na "
  144.                 + Arrays.binarySearch(poleCisel, 1, 4, 8) + " indexi.");
  145.  
  146.         // Vynimky pre polia
  147.         // ArrayIndexOutOfBoundsException / IndexOutOfBoundsException - index pola je vacsie nez jeho velkost, alebo zaporny
  148.         // ArrayStoreException / RuntimeException - do pola nejake typu vlozene iny typ
  149.         System.out.println("\nSpecialne metody beruce do uvahy aj viacnasobne pole ako argumenty "
  150.                 + "\n- DEEPEQUALS | DEEPHASHCODE | DEEPTOSTRING:");
  151.  
  152.         Arrays.deepEquals(args, args);
  153.         Arrays.deepHashCode(args);
  154.         Arrays.deepToString(args);
  155.  
  156.         String[][] menaKlientov = {{"Karol", "Fero"}, {"Laco", "Eva"}};
  157.  
  158.         System.out.println(Arrays.deepToString(menaKlientov));
  159.         System.out.print("Klasicky toString():");
  160.         System.out.println(Arrays.toString(menaKlientov));
  161.  
  162.     }
  163.  
  164. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement