import java.util.*;
import java.lang.*;
import java.io.*;
// The main method must be in a class named "Main".
class Main {
public static void main(String[] args) {
// code, date, maximum, remain
int[][] data = {
{1, 20300104, 100, 80},
{2, 20300804, 847, 37},
{3, 20300401, 10, 8}};
String ext = "date";
int val_ext = 20300501;
String sort_by = "remain";
int[][] so = solution(data, ext, val_ext, sort_by);
for (int[] a : so) {
for (int b : a) {
System.out.print(b+" ");
}
System.out.print("\n");
}
}
public static int[][] solution(int[][] data, String ext, int val_ext, String sort_by) {
int dataTag = 0;
int sortTag = 0;
Map<Integer, Integer[]> map = new HashMap<>();
switch (ext) {
case "code":
dataTag = 0;
break;
case "date":
dataTag = 1;
break;
case "maximum":
dataTag = 2;
break;
case "remain":
dataTag = 3;
break;
}
switch (sort_by) {
case "code":
sortTag = 0;
break;
case "date":
sortTag = 1;
break;
case "maximum":
sortTag = 2;
break;
case "remain":
sortTag = 3;
break;
}
for (int[] dt : data) {
if(dt[dataTag] < val_ext) {
//Integer[] integerAR = Arrays.stream(dt).boxed().toArray(Integer[]::new);
map.put(Integer.valueOf(dt[sortTag]), Arrays.stream(dt).boxed().toArray(Integer[]::new));
}
}
//Map<Integer, Integer[]> sortedMap = new TreeMap<>(map);
int[][] answer = map.entrySet().stream()
.sorted(Map.Entry.comparingByKey())
.map(entry -> Arrays.stream(entry.getValue())
.mapToInt(Integer::intValue).toArray())
.toArray(int[][]::new);
return answer;
}
}
To embed this project on your website, copy the following code and paste it into your website's HTML: