- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
public static Boolean parseBoolean(Object x)
{
if(x instanceof Integer)
return (Integer) x != 0;
if(x == null)
return false;
if(x instanceof Boolean)
return (Boolean) x;
if(x instanceof Double)
return Math.abs((Double) x) < 0.00001;
return !("" + x).equals("");
}
В яве не шибко разбираюсь, но !("" + x).equals("") -- это трюк чтобы избежать NullPointerException при x == null?
x = null;
"".equals(x);
Кеп подсказал
дано x==null
1) "".equals(x)==false
2) (x==null || x.isEmpty())==true
последний ретурн некий хитрый аналог этой функции для Object, ибо при сложении выполнится toString().
по-моему аналогично return (!x.toString().isEmpty());
чуток запутанно, но на gCode не смахивает