Предлагаю выкладывать в этой теме небольшие вспомогательные функции-методы, которые могут полезны по всему приложению.
я нашел вот такой метод:
Boolean nullOrEmpty(Object obj) {
return (obj == null) ||
((obj instanceof String) && (0 == ((String)obj).trim().length())) ||
((obj instanceof List<object>) && (0 == ((List<object>)obj).size()));
}
Предлагаю выкладывать в этой теме небольшие вспомогательные функции-методы, которые могут полезны по всему приложению. я нашел вот такой метод: [code]Boolean nullOrEmpty(Object obj) { return (obj == null) || ((obj instanceof String) && (0 == ((String)obj).trim().length())) || ((obj instanceof List<object>) && (0 == ((List<object>)obj).size())); }[/code]
Интересное написание) Думаю может пригодится.
Интересное написание) Думаю может пригодится.
Очень часто использую подобные методы:
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;
}
Очень часто использую подобные методы: [code] 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; } [/code] Также есть перегрузки для различных мап с различными типами данных. P.s. все еще мечтаю о дженериках. (:
https://gist.github.com/search?q=apex + http://code.tutsplus.com/tutorials/sexy-code-snippet-management-with-gists--net-24328 Наслаждайтесь!
не знал, что так можно
а можешь дать практический пример использования такого "сетофицированного" (без повторов) мэпа?
просто я думаю, а если там будет несколько др записей с одинаковым значением в fieldName, то они будут не удел...
чет не могу сообразать когда нам нужно собирать подобный меп
[quote="Gres"]String value = (String) sObj[b].get(fieldName)[/b];[/quote] не знал, что так можно а можешь дать практический пример использования такого "сетофицированного" (без повторов) мэпа? просто я думаю, а если там будет несколько др записей с одинаковым значением в 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;
}
Ну можно вот такой использовать: [code] 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; } [/code]
[quote="Den Brown"]а можешь дать практический пример использования такого "сетофицированного" (без повторов) мэпа?[/quote] Например, когда поле уникальное.
ну вот только тогда
[quote="Gres"]Например, когда поле уникальное.[/quote] ну вот только тогда
[quote="Den Brown"][quote="Gres"]Например, когда поле уникальное.[/quote] ну вот только тогда[/quote] На самом деле у меня он довольно часто используется)