- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
public static String elvis(String value, String ifNull) {
return value == null ? ifNull : value;
}
public static Boolean elvis(Boolean value, Boolean ifNull) {
return value == null ? ifNull : value;
}
public static Object elvis(Object value, Object ifNull) {
return value == null ? ifNull : value;
}
Dummy00001 06.02.2014 01:35 # +3
someone 06.02.2014 02:04 # +3
bormand 06.02.2014 07:07 # +1
myzone 07.02.2014 01:02 # 0
kegdan 07.02.2014 09:04 # 0
VseGovnoOdinYaKrut 07.02.2014 17:00 # +4
bormand 06.02.2014 07:07 # +2
Внешняя зависимость же... Не всегда айс. Или там guava/commons уже юзается?
roman-kashitsyn 06.02.2014 08:33 # +3
VseGovnoOdinYaKrut 06.02.2014 20:53 # 0
myzone 07.02.2014 01:04 # 0
VseGovnoOdinYaKrut 07.02.2014 18:20 # +2
myzone 07.02.2014 20:28 # +1
VseGovnoOdinYaKrut 07.02.2014 22:42 # 0
roman-kashitsyn 07.02.2014 10:25 # 0
VseGovnoOdinYaKrut 07.02.2014 16:59 # +1
myzone 07.02.2014 01:06 # +1
Там люди сделали NativeStringCache, например, кто догадается как он работает?
VseGovnoOdinYaKrut 07.02.2014 05:11 # +3
myzone 07.02.2014 20:28 # +1
bormand 07.02.2014 20:53 # +2
3.14159265 07.02.2014 22:33 # 0
bormand 07.02.2014 22:38 # 0
Или ты о сборке мусора из пула интернированных строк?
3.14159265 07.02.2014 22:45 # 0
OutOfMemoryError: PermGen space error
Это сильно заябывает. А куча больше.
myzone 08.02.2014 03:20 # 0
VseGovnoOdinYaKrut 08.02.2014 03:55 # +4
3.14159265 08.02.2014 03:57 # +5
myzone 08.02.2014 03:59 # 0
VseGovnoOdinYaKrut 07.02.2014 22:45 # +1
3.14159265 07.02.2014 22:48 # +1
Интернируем - раз при создании, как и расчёт хеш-кода. А equals нужно много раз на немутабельном объекте (те же мапы, они везде).
Если конечно строки не одноразовые, типа такого гогна:
while(it.hasNext()) s+=it.next();
Короче от контекста зависит.
Stertor 07.02.2014 22:59 # −3
Stertor 07.02.2014 23:20 # −3
VseGovnoOdinYaKrut 08.02.2014 00:20 # 0
3.14159265 08.02.2014 01:47 # 0
VseGovnoOdinYaKrut 08.02.2014 02:20 # 0
bormand 07.02.2014 05:29 # +1