Вам придется открыть InsStream
для итерации по индексу args
, затем создать SimpleEntry
каждого arg
с соответствующим annotaton
(согласно вашему коду), затем вы можете применить свою бизнес-логику.
IntStream.range(0, args.length)
.mapToObj(argIndex -> new AbstractMap.SimpleEntry<>(args[argIndex], parameterAnnotations[argIndex]))
.flatMap(objectSimpleEntry -> Arrays.stream(objectSimpleEntry.getValue()).map(annotation -> new AbstractMap.SimpleEntry<>(objectSimpleEntry.getKey(), annotation)))
.forEach(objectAnnotationSimpleEntry -> {
Annotation annotation = objectAnnotationSimpleEntry.getValue();
Object arg = objectAnnotationSimpleEntry.getKey();
if ((annotation instanceof RequestParam) || (annotation instanceof PathVariable) || (annotation instanceof RequestHeader)) {
methodArgs.append(arg + "|");
} else if ((annotation instanceof RequestBody)) {
methodArgs.append(arg + "|");
}
});
Селектор более конкретный.
Table.infoBox tr td table tr td
стилизует td-ячейки внутри таблицы, которая находится внутри таблицы с классом infobox.
table.ATJMainTable tr td
стилизует td-ячейки внутри таблицы с классом ATJMainTable
Вы можете использовать! Important, чтобы переопределить специфичность, или вы могли бы что-то сделать например:
table.infoBox tr td table.ATJMainTable tr td
, чтобы специально переопределить эту часть.
Или вы можете уменьшить селектор информационного окна, чтобы он был менее конкретным?
Фактически вы можете указать, какое правило выигрывает, используя ! important
.
table.ATJMainTable tr td
{
border: 1px solid black !important;
padding: 3px !important;
}
Это в основном говорит браузеру, что он должен убедиться, что это правило является наиболее важным правилом, а все остальные должны быть каскадированы в пользу этого правила.
предупреждение: вы захотите использовать это экономно, потому что это вызовет проблемы, которые трудно отследить, если вы будете использовать его слишком часто.