zoukankan      html  css  js  c++  java
  • [Java] Collections Intro example

    public class Code {
      public static void main(String[] args) {
        List<String> names = Arrays.asList("Paul", "Jane", "Sam", "Michaela");
    
        // Way to sort prior to Java 8 lambdas
        Collections.sort(names, new Comparator<String>() {
          @Override
          public int compare(String a, String b) {
            return b.compareTo(a);
          }
        });
        
        // first iteration with lambda
        Collections.sort(names, (String a, String b) -> {
          return b.compareTo(a);
        });
        
        // now remove the data types and allow the compile to infer the type
        Collections.sort(names, (a, b) -> b.compareTo(a));
        
        /*
        Book {
         String title
         String authorFName
         String authorLName
         int pages
        }
        */
        Book book1 = new Book("Missing Peregrine", "Ranson", "Riggs", 382);
        Book book2 = new Book("Harry Potter", "JK", "Rowling", 411);
        Book book3 = new Book("The cat", "Dr", "Seuss", 45);
        
        List<Book> books = Arrays.asList(book1, book2, book3);
        int total = book.stream()
              .collect(Collectors.summingInt(Book::getPages));
        System.out.println(total); //838
        
        List<String> lilst = books.stream()
              .map(Book::getAuthorLName)
              .collect(Collectors.toList());
        System.out.println(list); // [Riggs, Rowling, Seuss]
        
        // create a list with duplicates
        List<Book> dupBooks = Arrays.asList(book1, book2, book3, book1, book2);
        System.out.println("Before removing dupliates");
        System.out.println(dupBooks.toString());
        
        // remove duoplicates using a Set
        Collection<Book> noDups = new HashSet<>(dupBooks);
        System.out.println("After removing dupliates");
        System.out.println(noDups.toString());
        
        // example of using Set to eliminate dups and sort automatically
        Set<Integer> numbers = new HashSet<>(asList(4,3,3,3,2,1,1,1));
        System.out.println(numbers.toString()); // [1,2,3,4]
      }
    }
  • 相关阅读:
    5-4 链表的天然递归结构性质
    java8 Optional 解析
    [leetcode] Unique Binary Search Trees
    [leetcode] Anagrams
    [leetcode] Valid Number
    构造素数表2
    构造素数表1
    整型所占字节
    习题7-8 字符串转换成十进制整数
    习题7-7 字符串替换
  • 原文地址:https://www.cnblogs.com/Answer1215/p/14209573.html
Copyright © 2011-2022 走看看