Java Syntax CheatSheet
Java Syntax CheatSheet
- Descending sort:
Arrays.sort(arr, (a, b) -> Integer.compare(b, a));
- List<Integer> to int[]:
List<Integer> list = Arrays.asList(1, 2, 3);
int[] arr = list.stream().mapToInt(i -> i).toArray();
- List<int[]> to int[][]:
List<int[]> merged = new ArrayList<>();
return merged.toArray(new int[merged.size()][]);
- int[] to List<Integer>:
int[] arr = {1, 2, 3};
List<Integer> list = Arrays.stream(arr).boxed().collect(Collectors.toList());
- int[][] to List<int[]>:
int[][] arr = {{1, 2}, {3, 4}};
List<int[]> list = Arrays.asList(arr);
class Pair {
int start, end;
Pair(int s, int e) { start = s; end = e; }
}
List<Pair> list = new ArrayList<>();
Collections.sort(list, (a, b) -> Integer.compare(a.start, b.start));
- Filter + map:
list.stream()
.filter(s -> s.length() > 3)
.map(String::toUpperCase)
.collect(Collectors.toList());
- Sort by frequency:
freq.entrySet().stream()
.sorted((a, b) -> b.getValue() - a.getValue())
.forEach(entry -> ...);
7. PriorityQueue (Heap)
- Min heap:
PriorityQueue<Integer> pq = new PriorityQueue<>();
- Max heap:
PriorityQueue<Integer> pq = new PriorityQueue<>((a, b) -> b - a);
Modern Java Syntax and Coding Techniques Cheat Sheet
- Custom objects:
PriorityQueue<Pair> pq = new PriorityQueue<>((a, b) -> Integer.compare(a.end, b.end));