@@ -106,27 +106,25 @@ all(x % 2 == 0 for x in number_list)
106
106
** Java declaration/methods**
107
107
108
108
``` java
109
- var arr = new int []{1 , 2 , 3 , 4 , 5 };
109
+ int [] arr = new int []{1 , 2 , 3 , 4 , 5 }; // array
110
+ int [][] matrix = new int [m][n]; // 2d array (m by n matrix)
111
+ ```
110
112
111
- // 2d array (m by n matrix)
112
- var matrix = new int [m][n] ;
113
+ ``` java
114
+ import java.util.* ;
113
115
114
116
// Arrays
115
- import java.util.Arrays ;
116
117
binarySearch(arr, 3 ), equals(arr, another_arr), copyOf(arr, arr. length), copyOfRange(arr, from, to),
117
118
sort(arr), sort(arr, from, to), fill(arr, 42 ), fill(arr, from, to, 42 ),
118
119
// Arrays.stream()
119
120
anyMatch(x - > x % 2 == 0 ), allMatch(x - > x % 2 == 0 ), noneMatch(x - > x % 2 == 0 ),
120
121
count(), sum(), min(), max(), average(), map(x - > x * 2 ). toArray(), filter(x - > x % 2 == 0 ). count()
121
122
122
123
// Collections
123
- import java.util.Collections ;
124
124
sort(list), binarySearch(list, 3 ), min(list), max(list), swap(list, 0 , 1 ), replaceAll(list, 1 , 2 ),
125
125
frequency(list, 1 ), reverse(list), rotate(list, 1 ), shuffle(list), unmodifiableList(list)
126
126
127
127
// list
128
- import java.util.Comparator ;
129
- import java.util.List ;
130
128
var list = Arrays . asList(boxedArray);
131
129
Arrays . stream(arr). boxed(). collect(Collectors . toList())
132
130
sort(), sort(Comparator . naturalOrder()), sort(Comparator . reverseOrder())
@@ -138,14 +136,14 @@ str.toCharArray() // string to char array
138
136
str. chars(). toArray() // string to int array
139
137
140
138
// boxing
141
- var v = Arrays . stream(arr). boxed(). toArray(Integer []:: new ); // int[] to Integer[]
142
- var v = Arrays . stream(arr). mapToObj(String :: valueOf). toArray(String []:: new ); // int[] to String[]
143
- var v = Arrays . stream(arr). boxed(). collect(Collectors . toList()); // int[] to List<Integer>
139
+ var arr1 = Arrays . stream(arr). boxed(). toArray(Integer []:: new ); // int[] to Integer[]
140
+ var arr2 = Arrays . stream(arr). mapToObj(String :: valueOf). toArray(String []:: new ); // int[] to String[]
141
+ var arr3 = Arrays . stream(arr). boxed(). collect(Collectors . toList()); // int[] to List<Integer>
144
142
145
143
// integer sequence
146
- var arr = IntStream . range(0 , speeds . length ). toArray(); // range to int array in [0, n)
147
- var arr = IntStream . rangeClosed(1 , speeds . length ). toArray(); // range to int array in [1, n]
148
- var list = IntStream . range(0 , speeds . length ). boxed(). collect( Collectors . toList() ); // range to list
144
+ var arr = IntStream . range(0 , n ). toArray(); // range to int array in [0, n)
145
+ var arr = IntStream . rangeClosed(1 , n ). toArray(); // range to int array in [1, n]
146
+ var list = IntStream . range(0 , n ). boxed(). toList(); // range to list
149
147
150
148
var list = List . of(arr); // array to list
151
149
var list = Arrays . asList(arr); // array to list
@@ -438,29 +436,26 @@ sample_counter.update([1, 1, 2, 2, 3])
438
436
** Java declaration/ methods**
439
437
440
438
```java
439
+ import java. util. * ;
440
+
441
441
// map
442
- import java.util. HashMap ;
443
- var map = new HashMap<String , Integer > ();
442
+ Map<String , Integer > map = new HashMap<> ();
444
443
put(" a" , 1 ), putIfAbsent(" b" , 2 ), get(" a" ), getOrDefault(" f" , 6 ), remove(" a" ), size(), isEmpty(),
445
444
keySet(), values(), entrySet(), containsKey(" a" ), containsValue(1 ), replace(" a" , 2 ), clear()
446
445
var keys = map. keySet(). toArray(String []:: new );
447
446
var values = map. values(). toArray(Integer []:: new );
448
447
449
448
// set
450
- import java.util. HashSet ;
451
- var set = new HashSet<Integer > ();
449
+ Set<Integer > set = new HashSet<> ();
452
450
add(1 ), remove(1 ), size(), isEmpty(), contains(1 ), clear(), iterator()
453
451
var arr = set. toArray(Integer []:: new );
454
452
455
453
// enum map
456
- import java.util. EnumMap ;
457
454
Map<City , Integer > map = new EnumMap<> (City . class);
458
455
459
456
// linked hash map, linked hash set
460
- import java.util. LinkedHashMap ;
461
- import java.util. LinkedHashSet ;
462
- var map = new LinkedHashMap<String , Integer > ();
463
- var set = new LinkedHashSet<Integer > ();
457
+ Map<String , Integer > map = new LinkedHashMap<> ();
458
+ Set<Integer > set = new LinkedHashSet<> ();
464
459
465
460
// unboxing
466
461
int [] result = map. entrySet(). stream()
@@ -478,15 +473,13 @@ Map<String, Integer> map = Maps.newLinkedHashMap();
478
473
Set<Integer > set = Sets . newLinkedHashSet();
479
474
480
475
// guava multiset (implements Multiset<E>)
481
- import com. google. common. collect. * ;
482
476
Multiset<String > multiset = HashMultiset . create();
483
477
Multiset<String > multiset = TreeMultiset . create();
484
478
Multiset<String > multiset = LinkedHashMultiset . create();
485
479
Multiset<String > multiset = ConcurrentHashMultiset . create();
486
480
Multiset<String > multiset = ImmutableMultiset . of(" a" , " b" , " c" );
487
481
488
482
// guava multimap (implements Multimap<K, V>)
489
- import com. google. common. collect. * ;
490
483
Multimap<String , Integer > multimap = ArrayListMultimap . create();
491
484
Multimap<String , Integer > multimap = HashMultimap . create();
492
485
Multimap<String , Integer > multimap = LinkedListMultimap . create();
@@ -496,14 +489,12 @@ Multimap<String, Integer> multimap = ImmutableListMultimap.of("a", 1, "a", 2, "b
496
489
Multimap<String , Integer > multimap = ImmutableSetMultimap . of(" a" , 1 , " a" , 2 , " b" , 3 );
497
490
498
491
// guava bimap (implements BiMap<K, V>, Map<K, V>)
499
- import com. google. common. collect. * ;
500
492
BiMap<String , Integer > bimap = HashBiMap . create();
501
493
BiMap<String , Integer > bimap = ImmutableBiMap . of(" a" , 1 , " b" , 2 );
502
494
BiMap<City , Country > bimap = EnumBiMap . create(City . class, Country . class);
503
495
BiMap<City , Integer > bimap = EnumHashBiMap . create(City . class);
504
496
505
497
// guava table (implements Table<R, C, V>)
506
- import com. google. common. collect. * ;
507
498
Table<Vertex , Vertex , Double > weightedGraph = HashBasedTable . create();
508
499
Table<Vertex , Vertex , Double > weightedGraph = TreeBasedTable . create();
509
500
Table<Vertex , Vertex , Double > weightedGraph = ArrayTable . create(Arrays . asList(v1, v2), Arrays . asList(v3, v4));
@@ -549,9 +540,9 @@ heapq.heappush(number_list, 6), heapq.heappop(number_list), heapq.heapreplace(nu
549
540
** Java declaration/ methods**
550
541
551
542
```java
552
- import java.util. PriorityQueue ;
553
- var queue = new PriorityQueue<Integer > ();
554
- var queue = new PriorityQueue<Integer > (Collections . reverseOrder());
543
+ import java. util. * ;
544
+ Queue< Integer > queue = new PriorityQueue<> ();
545
+ Queue< Integer > queue = new PriorityQueue<> (Collections . reverseOrder());
555
546
add(1 ), peek(), poll(), remove(), size(), isEmpty(),
556
547
contains(1 ), clear(), iterator()
557
548
@@ -592,17 +583,17 @@ push_front(4), emplace_front(5), pop_front(), reverse(), sort()
592
583
** Java declaration/ methods**
593
584
594
585
```java
586
+ import java. util. * ;
587
+
595
588
// doubly linked list
596
- import java.util. LinkedList ;
597
- var list = new LinkedList<Integer > ();
589
+ List<Integer > list = new LinkedList<> ();
598
590
add(1 ), addAll(List . of(2 , 3 , 4 , 5 )),
599
591
remove(0 ), removeFirst(), removeLast(), removeIf(x - > x % 2 == 0 ), subList(1 , 3 ),
600
592
get(0 ), getFirst(), getLast(), size(), isEmpty(), contains(1 ), containsAll(List . of(1 , 2 , 3 )),
601
593
iterator(), listIterator()
602
594
603
595
// dynamically resized array
604
- import java.util. ArrayList ;
605
- var list = new ArrayList<Integer > ();
596
+ List<Integer > list = new ArrayList<> ();
606
597
add(1 ), addAll(List . of(2 , 3 , 4 , 5 )), remove(0 ), subList(1 , 3 ),
607
598
get(0 ), size(), isEmpty(), contains(3 ), containsAll(List . of(3 , 4 )),
608
599
iterator(), listIterator()
@@ -657,8 +648,8 @@ append(6), appendleft(7), pop(), popleft()
657
648
** Java declaration/ methods**
658
649
659
650
```java
660
- import java.util. ArrayDeque ;
661
- var deque = new ArrayDeque<Integer > ();
651
+ import java. util. * ;
652
+ Deque< Integer > deque = new ArrayDeque<> ();
662
653
add(1 ), remove(), pop(), size(), isEmpty(), contains(1 ), clear(),
663
654
offerFirst(6 ), offerLast(7 ), pollFirst(), pollLast(), peekFirst(), peekLast(),
664
655
addFirst(8 ), addLast(9 ), removeFirst(), removeLast(), getFirst(), getLast(),
@@ -699,8 +690,8 @@ append(4), pop()
699
690
** Java declaration/ methods**
700
691
701
692
```java
702
- import java.util. Stack ;
703
- var stack = new Stack<Integer > ();
693
+ import java. util. * ;
694
+ Stack< Integer > stack = new Stack<> ();
704
695
push(1 ), add(1 , 2 ), addAll(anotherList), pop(), peek(), size(), isEmpty(),
705
696
contains(1 ), search(1 ), size(),
706
697
remove(1 ), removeIf(x - > x == 1 ), clear(),
@@ -746,21 +737,21 @@ sort_dict = SortedDict({'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5})
746
737
** Java declaration/ methods (binary search tree based)**
747
738
748
739
```java
740
+ import java. util. * ;
741
+
749
742
// tree map (based on red-black tree)
750
- import java.util. TreeMap ;
751
- var map = new TreeMap<Integer , Integer > ();
752
- var map = new TreeMap<Integer , Integer > (Collections . reverseOrder());
753
- var map = new TreeMap<String , Integer > (Map . of(" a" , 1 , " b" , 2 , " c" , 3 ));
743
+ Map<Integer , Integer > map = new TreeMap<> ();
744
+ Map<Integer , Integer > map = new TreeMap<> (Collections . reverseOrder());
745
+ Map<String , Integer > map = new TreeMap<> (Map . of(" a" , 1 , " b" , 2 , " c" , 3 ));
754
746
put(" a" , 1 ), putIfAbsent(" b" , 2 ), get(" a" ), getOrDefault(" f" , 6 ), remove(" a" ), size(), isEmpty(),
755
747
keySet(), values(), entrySet(), containsKey(" a" ), containsValue(1 ), replace(" a" , 2 ), clear()
756
748
firstKey(), lastKey(), lowerKey(" b" ), higherKey(" b" ), floorKey(" b" ), ceilingKey(" b" ),pollFirstEntry(), pollLastEntry(),
757
749
headMap(" c" ), tailMap(" c" ), subMap(" a" , " c" ), descendingMap(), descendingKeySet()
758
750
759
751
// tree set (based on red-black tree)
760
- import java.util. TreeSet ;
761
- var set = new TreeSet<Integer > ();
762
- var set = new TreeSet<Integer > (Collections . reverseOrder());
763
- var set = new TreeSet<Integer > (List . of(1 , 2 , 3 , 4 , 5 ));
752
+ Set<Integer > set = new TreeSet<> ();
753
+ Set<Integer > set = new TreeSet<> (Collections . reverseOrder());
754
+ Set<Integer > set = new TreeSet<> (List . of(1 , 2 , 3 , 4 , 5 ));
764
755
add(1 ), remove(1 ), size(), isEmpty(), contains(1 ), clear(), iterator(), descendingIterator(),
765
756
first(), last(), lower(3 ), higher(3 ), floor(3 ), ceiling(3 ), pollFirst(), pollLast(),
766
757
headSet(3 ), tailSet(3 ), subSet(2 , 4 ), descendingSet()
@@ -965,11 +956,11 @@ Long.toString(num, base) // long -> string with base
965
956
Long . bitCount(42 ) // number of 1-bits
966
957
967
958
// bitset
968
- import java.util. BitSet ;
959
+ import java. util. * ;
969
960
new BitSet (16 ), set(0 ), set(0 , 8 ), set(0 , 8 , true )
970
961
971
962
// hex digits
972
- import java.util. HexFormat ;
963
+ import java. util. * ;
973
964
HexFormat hex = HexFormat . of();
974
965
byte b = 127 ;
975
966
String byteStr = hex. toHexDigits(b);
@@ -1035,16 +1026,15 @@ bisect.bisect_left(number_list, 3), bisect.bisect_right(number_list, 3), bisect.
1035
1026
1036
1027
```java
1037
1028
import java. util. * ;
1038
- var array = new int []{1 , 2 , 3 , 4 , 5 };
1039
- var arrayList = new ArrayList<Integer > (List . of(1 , 2 , 3 , 4 , 5 ));
1040
- var linkedList = new LinkedList<Integer > (List . of(1 , 2 , 3 , 4 , 5 ));
1041
- var hashSet = new HashSet<Integer > (List . of(1 , 2 , 3 , 4 , 5 ));
1042
- var linkedHashSet = new LinkedHashSet<Integer > (List . of(1 , 2 , 3 , 4 , 5 ));
1043
- var treeSet = new TreeSet<Integer > (List . of(1 , 2 , 3 , 4 , 5 ));
1029
+
1030
+ int [] array = new int []{1 , 2 , 3 , 4 , 5 };
1031
+ List<Integer > arrayList = new ArrayList<> (List . of(1 , 2 , 3 , 4 , 5 ));
1032
+ List<Integer > linkedList = new LinkedList<> (List . of(1 , 2 , 3 , 4 , 5 ));
1033
+ Set<Integer > hashSet = new HashSet<> (List . of(1 , 2 , 3 , 4 , 5 ));
1034
+ Set<Integer > linkedHashSet = new LinkedHashSet<> (List . of(1 , 2 , 3 , 4 , 5 ));
1035
+ Set<Integer > treeSet = new TreeSet<> (List . of(1 , 2 , 3 , 4 , 5 ));
1044
1036
1045
1037
// binary search
1046
- import java.util. Arrays ;
1047
- import java.util. Collections ;
1048
1038
Arrays . binarySearch(array, 3 ) // for array
1049
1039
Collections . binarySearch(arrayList, 3 ); // for list
1050
1040
```
@@ -1092,13 +1082,15 @@ result = sorted(number_list) # return a new list(copy)
1092
1082
`Arrays . sort()` and `Collections . sort()` sort the array and list in ascending order in- place.
1093
1083
1094
1084
```java
1095
- import java.util. Arrays ;
1085
+ import java. util. * ;
1086
+
1087
+ // Arrays
1096
1088
Arrays . sort(arr); // dual pivot quick sort (primitive types)
1097
1089
// timsort (insertion sort + merge sort) (reference types)
1098
1090
Arrays . sort(arr, Comparator . comparingInt(String :: length));
1099
1091
Arrays . sort(arr, Comparator . comparingInt(String :: length). reversed());
1100
1092
1101
- import java.util . Collections;
1093
+ // Collections
1102
1094
Collections . sort(list); // timsort (insertion sort + merge sort)
1103
1095
list. sort(Comparator . naturalOrder());
1104
1096
list. sort(Comparator . reverseOrder());
0 commit comments