Предлагаю выкладывать в этой теме небольшие вспомогательные функции-методы, которые могут полезны по всему приложению.
я нашел вот такой метод:
Boolean nullOrEmpty(Object obj) {
return (obj == null) ||
((obj instanceof String) && (0 == ((String)obj).trim().length())) ||
((obj instanceof List<object>) && (0 == ((List<object>)obj).size()));
}Интересное написание) Думаю может пригодится.
Очень часто использую подобные методы:
public static Map<String, SObject> createMapByFieldName(SObject[] sObjectList, String fieldName) {
Map<String, SObject> fieldSobjectMap = new Map<String, SObject>();
for(SObject sObj : sObjectList) {
String value = (String) sObj.get(fieldName);
if(!fieldSobjectMap.containsKey(value)) {
fieldSobjectMap.put(value, sObj);
}
}
return fieldSobjectMap;
}не знал, что так можно
а можешь дать практический пример использования такого "сетофицированного" (без повторов) мэпа?
просто я думаю, а если там будет несколько др записей с одинаковым значением в fieldName, то они будут не удел...
чет не могу сообразать когда нам нужно собирать подобный меп
Ну можно вот такой использовать:
public static Map<String, SObject[]> createMapByFieldNameAndList(SObject[] sObjectList, String fieldName) {
Map<String, SObject[]> fieldSobjectMap = new Map<String, SObject[]>();
for(SObject sObj : sObjectList) {
String key = (String) sObj.get(fieldName);
SObject[] values = null;
if(fieldSobjectMap.containsKey(key)) {
values = fieldSobjectMap.get(key);
} else {
values = new List<SObject>();
fieldSobjectMap.put(key, values);
}
values.add(sObj);
}
return fieldSobjectMap;
}ну вот только тогда