Advertisement
Guest User

Untitled

a guest
Oct 20th, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.49 KB | None | 0 0
  1. import java.util.ArrayList;
  2. import java.util.Arrays;
  3. import java.util.Collections;
  4. import java.util.List;
  5. import java.util.regex.Pattern;
  6. import java.util.stream.Collectors;
  7. import java.util.stream.IntStream;
  8.  
  9. public class Main {
  10.     public static void main(String[] args) {
  11.  
  12.         List<String> list = Arrays.asList("abc", "vx5yz", "x", "42", "Abc", "XX");
  13.  
  14.         /*for(String str : list) {
  15.             if(str.length() >= 3) {
  16.                 System.out.println(str);
  17.             }
  18.         }
  19.  
  20.         /*char first = 'a';
  21.         char second = 'b';
  22.         char third = 'c';
  23.  
  24.         System.out.println(first - 'a' + 1);
  25.         System.out.println(second - 'a' + 1);
  26.         System.out.println(third - 'a' + 1);*/
  27.  
  28.         // intepretujac a=1, b=2, ... z=..., chcemy wyswietlic sume znakow w kazdym stringu
  29.  
  30. /*      list.stream()                                                           // tworzymy stream z kolekcji
  31.                 .map(str -> str.toLowerCase())                                  // zamieniamy elementy (stringi) na lowerCase
  32.                 .filter(str -> !Pattern.compile("[0-9]").matcher(str).find())   // przepuszczamy tylko te, ktore nie maja w srodku cyfr
  33.                 .map(str -> {
  34.                     int sum = 0;
  35.                     for(char c : str.toCharArray()) {                           // uzywamy toCharArray, bo for-each nie dziala ze Stringami...
  36.                         sum += c - 'a' + 1;
  37.                     }
  38.                     return str + " " + sum;
  39.                 })                                                              // mapujemy (tworzymy nowe elementy z argumentu) stringi na je same + odpowiadajaca im suma znakow
  40.                 .forEach(str -> System.out.println(str));                       // na koniec wyswietlamy
  41.         //      .forEach(System.out::println);
  42. */
  43.         /*List<String> newList = new ArrayList<>();
  44.         for(String s : list) {
  45.             newList.add(s.toUpperCase());
  46.         }*/
  47.  
  48.         List<String> newList = list.stream()
  49.                 .map(String::toUpperCase)                                       // Identyczne jak: (str -> str.toUpperCase())
  50.                 .sorted((first, second) -> first.length() - second.length())    // sortujemy po dlugosci
  51.                 .collect(Collectors.toList());
  52.  
  53.  
  54.         System.out.println("Nowa lista: " + newList);
  55.         System.out.println("Stara lista: " + list);
  56.  
  57.         IntStream.range(0, 100)                 // [0, 99]
  58.                 .forEach(System.out::println);
  59.  
  60.         List<String> strings = Arrays.asList("abc", "xyz", "www", "ab", "abc", "www");
  61.  
  62.         long liczbaElementow = strings.stream()
  63.                 .filter(str -> str.length() > 2)
  64.                 .distinct()
  65.                 .sorted()   // bezuzyteczne, bo liczymy liczbe elementow!
  66.                 .count();
  67.  
  68.         System.out.println("Count: " + liczbaElementow);
  69.     }
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement