Регистрация  |  Вход

Сундучок с полезностями

Предлагаю выкладывать в этой теме небольшие вспомогательные функции-методы, которые могут полезны по всему приложению.

я нашел вот такой метод:

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;
}

Также есть перегрузки для различных мап с различными типами данных.
P.s. все еще мечтаю о дженериках. (:

Очень часто использую подобные методы:
[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
Наслаждайтесь!

Gres
String value = (String) sObj.get(fieldName);

не знал, что так можно

а можешь дать практический пример использования такого "сетофицированного" (без повторов) мэпа?

просто я думаю, а если там будет несколько др записей с одинаковым значением в 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]

Den Brown
а можешь дать практический пример использования такого "сетофицированного" (без повторов) мэпа?

Например, когда поле уникальное.

[quote="Den Brown"]а можешь дать практический пример использования такого "сетофицированного" (без повторов) мэпа?[/quote]
Например, когда поле уникальное.

Gres
Например, когда поле уникальное.

ну вот только тогда

[quote="Gres"]Например, когда поле уникальное.[/quote]

ну вот только тогда

Den Brown
Gres
Например, когда поле уникальное.

ну вот только тогда


На самом деле у меня он довольно часто используется)

[quote="Den Brown"][quote="Gres"]Например, когда поле уникальное.[/quote]

ну вот только тогда[/quote]
На самом деле у меня он довольно часто используется)