本文整理汇总了Java中com.alibaba.fastjson.util.TypeUtils.castToInt方法的典型用法代码示例。如果您正苦于以下问题:Java TypeUtils.castToInt方法的具体用法?Java TypeUtils.castToInt怎么用?Java TypeUtils.castToInt使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.alibaba.fastjson.util.TypeUtils
的用法示例。
在下文中一共展示了TypeUtils.castToInt方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: deserialze
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
public <T> T deserialze(DefaultJSONParser parser, Type clazz, Object fieldName) {
JSONLexer lexer = parser.getLexer();
if (lexer.token() == 8) {
lexer.nextToken(16);
return null;
}
T intObj;
if (lexer.token() == 2) {
int val = lexer.intValue();
lexer.nextToken(16);
intObj = Integer.valueOf(val);
} else if (lexer.token() == 3) {
BigDecimal decimalValue = lexer.decimalValue();
lexer.nextToken(16);
intObj = Integer.valueOf(decimalValue.intValue());
} else {
intObj = TypeUtils.castToInt(parser.parse());
}
if (clazz == AtomicInteger.class) {
return new AtomicInteger(intObj.intValue());
}
return intObj;
}
示例2: readInteger
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
public Integer readInteger() {
Object object;
if (context == null) {
object = parser.parse();
} else {
readBefore();
object = parser.parse();
readAfter();
}
return TypeUtils.castToInt(object);
}
示例3: parseField
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
public void parseField(DefaultJSONParser parser, Object object, Type objectType, Map<String, Object> fieldValues) {
JSONLexer lexer = parser.getLexer();
if (lexer.token() == 2) {
int val = lexer.intValue();
lexer.nextToken(16);
if (object == null) {
fieldValues.put(this.fieldInfo.getName(), Integer.valueOf(val));
return;
} else {
setValue(object, val);
return;
}
}
Integer value;
if (lexer.token() == 8) {
value = null;
lexer.nextToken(16);
} else {
value = TypeUtils.castToInt(parser.parse());
}
if (value != null || getFieldClass() != Integer.TYPE) {
if (object == null) {
fieldValues.put(this.fieldInfo.getName(), value);
} else {
setValue(object, (Object) value);
}
}
}
示例4: readInteger
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
public Integer readInteger() {
Object object;
if (this.context == null) {
object = this.parser.parse();
} else {
readBefore();
object = this.parser.parse();
readAfter();
}
return TypeUtils.castToInt(object);
}
示例5: parseField
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
@Override
public void parseField(DefaultJSONParser parser, Object object, Type objectType, Map<String, Object> fieldValues) {
Integer value;
final JSONLexer lexer = parser.getLexer();
if (lexer.token() == JSONToken.LITERAL_INT) {
int val = lexer.intValue();
lexer.nextToken(JSONToken.COMMA);
if (object == null) {
fieldValues.put(fieldInfo.getName(), val);
} else {
setValue(object, val);
}
return;
} else if (lexer.token() == JSONToken.NULL) {
value = null;
lexer.nextToken(JSONToken.COMMA);
} else {
Object obj = parser.parse();
value = TypeUtils.castToInt(obj);
}
if (value == null && getFieldClass() == int.class) {
// skip
return;
}
if (object == null) {
fieldValues.put(fieldInfo.getName(), value);
} else {
setValue(object, value);
}
}
示例6: deserialze
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
public <T> T deserialze(DefaultJSONParser parser, Type clazz, Object fieldName) {
final JSONLexer lexer = parser.getLexer();
if (lexer.token() == JSONToken.NULL) {
lexer.nextToken(JSONToken.COMMA);
return null;
}
Integer intObj;
if (lexer.token() == JSONToken.LITERAL_INT) {
int val = lexer.intValue();
lexer.nextToken(JSONToken.COMMA);
intObj = Integer.valueOf(val);
} else if (lexer.token() == JSONToken.LITERAL_FLOAT) {
BigDecimal decimalValue = lexer.decimalValue();
lexer.nextToken(JSONToken.COMMA);
intObj = Integer.valueOf(decimalValue.intValue());
} else {
Object value = parser.parse();
intObj = TypeUtils.castToInt(value);
}
if (clazz == AtomicInteger.class) {
return (T) new AtomicInteger(intObj.intValue());
}
return (T) intObj;
}
示例7: deserialze
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
public <T> T deserialze(DefaultJSONParser parser, Type clazz, Object fieldName) {
final JSONLexer lexer = parser.lexer;
final int token = lexer.token();
if (token == JSONToken.NULL) {
lexer.nextToken(JSONToken.COMMA);
return null;
}
Integer intObj;
try {
if (token == JSONToken.LITERAL_INT) {
int val = lexer.intValue();
lexer.nextToken(JSONToken.COMMA);
intObj = Integer.valueOf(val);
} else if (token == JSONToken.LITERAL_FLOAT) {
BigDecimal decimalValue = lexer.decimalValue();
lexer.nextToken(JSONToken.COMMA);
intObj = Integer.valueOf(decimalValue.intValue());
} else {
if (token == JSONToken.LBRACE) {
JSONObject jsonObject = new JSONObject(true);
parser.parseObject(jsonObject);
intObj = TypeUtils.castToInt(jsonObject);
} else {
Object value = parser.parse();
intObj = TypeUtils.castToInt(value);
}
}
} catch (Exception ex) {
throw new JSONException("parseInt error, field : " + fieldName, ex);
}
if (clazz == AtomicInteger.class) {
return (T) new AtomicInteger(intObj.intValue());
}
return (T) intObj;
}
示例8: getInteger
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
public Integer getInteger(String key) {
return TypeUtils.castToInt(get(key));
}
示例9: getInteger
import com.alibaba.fastjson.util.TypeUtils; //导入方法依赖的package包/类
public Integer getInteger(int index) {
return TypeUtils.castToInt(get(index));
}