📄 strings.java
字号:
return defaultValue;
}
catch(NumberFormatException numberformatexception)
{
return defaultValue;
}
}
public static long asLong(String str)
{
return asLong(str, 0L);
}
public static Long asLong(String str, Long defaultValue)
{
try
{
return Long.decode(str.trim());
}
catch(NullPointerException nullpointerexception)
{
return defaultValue;
}
catch(NumberFormatException numberformatexception)
{
return defaultValue;
}
}
public static long asLong(String str, long defaultValue)
{
try
{
return Long.decode(str.trim()).longValue();
}
catch(NullPointerException nullpointerexception)
{
return defaultValue;
}
catch(NumberFormatException numberformatexception)
{
return defaultValue;
}
}
public static short asShort(String str)
{
return asShort(str, (short)0);
}
public static Short asShort(String str, Short defaultValue)
{
try
{
return Short.decode(str.trim());
}
catch(NullPointerException nullpointerexception)
{
return defaultValue;
}
catch(NumberFormatException numberformatexception)
{
return defaultValue;
}
}
public static short asShort(String str, short defaultValue)
{
try
{
return Short.decode(str.trim()).shortValue();
}
catch(NullPointerException nullpointerexception)
{
return defaultValue;
}
catch(NumberFormatException numberformatexception)
{
return defaultValue;
}
}
public static String asString(String str)
{
return asString(str, "", "");
}
public static String asString(String str, String defaultValue)
{
return asString(str, defaultValue, defaultValue);
}
public static String asString(String str, String defaultValue, String emptyStringValue)
{
try
{
return str.equals("") ? emptyStringValue : str;
}
catch(NullPointerException nullpointerexception)
{
return defaultValue;
}
}
public static Date asDate(String str)
{
return asDate(str, new Date(), null);
}
public static Date asDate(String str, Date defaultValue)
{
return asDate(str, defaultValue, null);
}
public static Date asDate(String str, Date defaultValue, String pattern)
{
DateFormat formatter = new SimpleDateFormat(pattern != null ? pattern : DEFAULT_DATE_PATTTERN);
try
{
return formatter.parse(str);
}
catch(ParseException parseexception)
{
return defaultValue;
}
catch(NullPointerException nullpointerexception)
{
return defaultValue;
}
}
public static Object asType(Class type, String str)
{
if(type.isAssignableFrom(java.lang.String.class))
return asString(str, "", "");
if(type.isAssignableFrom(java.lang.Integer.class) || type.equals(Integer.TYPE))
return asInteger(str, new Integer(0));
if(type.isAssignableFrom(java.lang.Double.class) || type.equals(Double.TYPE))
return asDouble(str, new Double(0.0D));
if(type.isAssignableFrom(java.lang.Boolean.class) || type.equals(Boolean.TYPE))
return asBoolean(str, Boolean.FALSE);
if(type.isAssignableFrom(java.lang.Float.class) || type.equals(Float.TYPE))
return asFloat(str, new Float(0.0F));
if(type.isAssignableFrom(java.lang.Long.class) || type.equals(Long.TYPE))
return asLong(str, new Long(0L));
if(type.isAssignableFrom(java.lang.Short.class) || type.equals(Short.TYPE))
return asShort(str, new Short((short)0));
if(type.isAssignableFrom(java.lang.Byte.class) || type.equals(Byte.TYPE))
return asByte(str, new Byte((byte)0));
if(type.isAssignableFrom(java.lang.Character.class) || type.equals(Character.TYPE))
return asCharacter(str, new Character('\0'));
if(type.isAssignableFrom(java.math.BigDecimal.class))
return asBigDecimal(str, new BigDecimal(BigInteger.ZERO));
if(type.isAssignableFrom(java.math.BigInteger.class))
return asBigInteger(str, BigInteger.ZERO);
if(type.isAssignableFrom(java.util.Date.class))
return asDate(str, new Date(), null);
else
return null;
}
public static Object asType(Class type, String str, Object defaultValue)
{
if(type.isAssignableFrom(java.lang.String.class))
return asString(str, (String)defaultValue);
if(type.isAssignableFrom(java.lang.Integer.class) || type.equals(Integer.TYPE))
return asInteger(str, (Integer)defaultValue);
if(type.isAssignableFrom(java.lang.Double.class) || type.equals(Double.TYPE))
return asDouble(str, (Double)defaultValue);
if(type.isAssignableFrom(java.lang.Boolean.class) || type.equals(Boolean.TYPE))
return asBoolean(str, (Boolean)defaultValue);
if(type.isAssignableFrom(java.lang.Float.class) || type.equals(Float.TYPE))
return asFloat(str, (Float)defaultValue);
if(type.isAssignableFrom(java.lang.Long.class) || type.equals(Long.TYPE))
return asLong(str, (Long)defaultValue);
if(type.isAssignableFrom(java.lang.Short.class) || type.equals(Short.TYPE))
return asShort(str, (Short)defaultValue);
if(type.isAssignableFrom(java.lang.Byte.class) || type.equals(Byte.TYPE))
return asByte(str, (Byte)defaultValue);
if(type.isAssignableFrom(java.lang.Character.class) || type.equals(Character.TYPE))
return asCharacter(str, (Character)defaultValue);
if(type.isAssignableFrom(java.math.BigDecimal.class))
return asBigDecimal(str, (BigDecimal)defaultValue);
if(type.isAssignableFrom(java.math.BigInteger.class))
return asBigInteger(str, (BigInteger)defaultValue);
if(type.isAssignableFrom(java.util.Date.class))
return asDate(str, (Date)defaultValue);
else
return null;
}
public static Object asType(Class type, Object obj)
{
if(!type.equals(java.lang.String.class) && type.isInstance(obj))
return obj;
if(obj == null || (obj instanceof String))
return asType(type, (String)obj);
if((obj instanceof Date) && (java.lang.String.class).isAssignableFrom(type))
return (new SimpleDateFormat(DEFAULT_DATE_PATTTERN)).format((Date)obj);
if((obj instanceof Number) && (java.lang.Number.class).isAssignableFrom(type))
{
Number num = (Number)obj;
if(type.isAssignableFrom(java.lang.Number.class))
return num;
if(type.isAssignableFrom(java.lang.Integer.class))
return new Integer(num.intValue());
if(type.isAssignableFrom(java.lang.Double.class))
return new Double(num.doubleValue());
if(type.isAssignableFrom(java.lang.Float.class))
return new Float(num.floatValue());
if(type.isAssignableFrom(java.lang.Long.class))
return new Long(num.longValue());
if(type.isAssignableFrom(java.lang.Short.class))
return new Short(num.shortValue());
if(type.isAssignableFrom(java.lang.Byte.class))
return new Byte(num.byteValue());
if(type.isAssignableFrom(java.math.BigInteger.class))
return (new BigDecimal(num.toString())).toBigInteger();
if(type.isAssignableFrom(java.math.BigDecimal.class))
return new BigDecimal(num.toString());
}
return asType(type, obj.toString());
}
public static Object asType(Class type, Object obj, Object defaultValue)
{
if(!type.equals(java.lang.String.class) && type.isInstance(obj))
return obj;
if(obj == null || (obj instanceof String))
return asType(type, (String)obj, defaultValue);
if((obj instanceof Date) && (java.lang.String.class).isAssignableFrom(type))
return (new SimpleDateFormat(DEFAULT_DATE_PATTTERN)).format((Date)obj);
if((obj instanceof Number) && (java.lang.Number.class).isAssignableFrom(type))
{
Number num = (Number)obj;
if(type.isAssignableFrom(java.lang.Number.class))
return num;
if(type.isAssignableFrom(java.lang.Integer.class))
return new Integer(num.intValue());
if(type.isAssignableFrom(java.lang.Double.class))
return new Double(num.doubleValue());
if(type.isAssignableFrom(java.lang.Float.class))
return new Float(num.floatValue());
if(type.isAssignableFrom(java.lang.Long.class))
return new Long(num.longValue());
if(type.isAssignableFrom(java.lang.Short.class))
return new Short(num.shortValue());
if(type.isAssignableFrom(java.lang.Byte.class))
return new Byte(num.byteValue());
if(type.isAssignableFrom(java.math.BigInteger.class))
return (new BigDecimal(num.toString())).toBigInteger();
if(type.isAssignableFrom(java.math.BigDecimal.class))
return new BigDecimal(num.toString());
}
return asType(type, obj.toString(), defaultValue);
}
public static String getClassName(Class cls)
{
return getClassName(cls.getName());
}
public static String getClassName(String fullName)
{
if(fullName == null)
{
return null;
} else
{
fullName = fullName.trim();
String className = fullName.substring(fullName.lastIndexOf('.') + 1).replace('$', '.').trim();
return className.equals("") ? null : className;
}
}
public Strings()
{
}
private static String FALSE_STRINGS[] = {
"false", "null", "nul", "off", "no", "n"
};
private static String DEFAULT_DATE_PATTTERN = "yyyy-M-d";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -