Если это не может быть обернуто дженериками (ответ @ Martijn), лучше передать его без каста, чтобы избежать избыточной итерации списка (проверка типа первого элемента ничего не гарантирует). Мы можем отбросить каждый элемент в фрагменте кода, где мы перебираем список.
Object attVal = jsonMap.get("attName");
List<Object> ls = new ArrayList<>();
if (attVal instanceof List) {
ls.addAll((List) attVal);
} else {
ls.add(attVal);
}
// far, far away ;)
for (Object item : ls) {
if (item instanceof String) {
System.out.println(item);
} else {
throw new RuntimeException("Wrong class ("+item .getClass()+") of "+item );
}
}