У меня есть те же данные с разными критериями, и вы хотите отображать на JTable, может кто-то мне помочь? ex: У меня есть данные в таблице "Альтернативные"
с ID = id01 (3 данных)
первые данные "id01 с критериями 1 = 01",
вторых данных "id01 с критериями2 = 02".
Я хочу отобразить в таблице с идентификатором столбец, критерии1, критерии02 со значением id01,01,02. горизонтально
Картина:
Предполагая, что вы начинаете с List<String[]>
например,
List<String[]> dataFromDatabase = new ArrayList<>();
dataFromDatabase.add(new String[] {"id01", "criteria1", "1"});
dataFromDatabase.add(new String[] {"id01", "criteria2", "2"});
dataFromDatabase.add(new String[] {"id01", "criteria3", "5"});
dataFromDatabase.add(new String[] {"id02", "criteria1", "6"});
dataFromDatabase.add(new String[] {"id02", "criteria2", "7"});
dataFromDatabase.add(new String[] {"id02", "criteria3", "10"});
Вы можете запустить его и сохранить данные в формате, который вы хотите на карте:
Map<String, String[]> resultMap = new HashMap<>();
for(String[] dataArray : dataFromDatabase) {
String id = dataArray[0];
String criteria = dataArray[1];
String value = dataArray[2];
String[] result = resultMap.getOrDefault(id, new String[3]);
if("criteria1".equals(criteria))
result[0] = value;
else if("criteria2".equals(criteria))
result[1] = value;
else if("criteria3".equals(criteria))
result[2] = value;
resultMap.put(id, result);
}
В итоге вы получите следующую карту:
{ "id01", ["1","2","5"] }
{ "id02", ["6","7","10"] }
Я мог бы уточнить ответ, если вы дадите более подробную информацию.