Java常用类

String

编码问题:

Strings2 = new String(number.getBytes("ISO-8859-1" ),"utf-8");
Byte[] bytes = String.getBytes("GBK"); //生成一个GBK格式编码的byte[]数组

字符串的截取:

###########################################################################################

Double

保留两位有效数字:

Doubled = 1.1166;
DecimalFormatdf = new DecimalFormat(".##");
Strings = df.format(d);  // s=1.12

###########################################################################################

BigDecimal

用来对超过16位有效位的数进行精确的运算。

Demo1:

bd1除以bd2,保留两位小数,四舍五入。

BigDecimalbd1 = new BigDecimal(2.66);
BigDecimal bd2 = new BigDecimal(2);
bd1 = bd1.divide(bd2,2,BigDecimal.ROUND_HALF_DOWN);

解释:

ROUND_CEILING
    如果BigDecimal是正的,则做ROUND_UP操作;如果为负,则做ROUND_DOWN操作。
ROUND_DOWN
    从不在舍弃(即截断)的小数之前增加数字。
ROUND_FLOOR
    如果BigDecimal为正,则作ROUND_UP;如果为负,则作ROUND_DOWN 。
ROUND_HALF_DOWN
    若舍弃部分> .5,则作ROUND_UP;否则,作ROUND_DOWN 。
ROUND_HALF_EVEN
    如果舍弃部分左边的数字为奇数,则作ROUND_HALF_UP ;如果它为偶数,则作ROUND_HALF_DOWN。
ROUND_HALF_UP
    若舍弃部分>=.5,则作ROUND_UP ;否则,作 ROUND_DOWN 。
ROUND_UNNECESSARY
    该“伪舍入模式”实际是指明所要求的操作必须是精确的,,因此不需要舍入操作。
ROUND_UP
    总是在非 0 舍弃小数(即截断)之前增加数字。

###########################################################################################

JSONArray、JSONObject 

//  将保存多个对象的json字符串转换为JSONArray集合
JSONArray jsonArray = JSONArray.fromObject(json);
//  遍历出JSONObject,并转为实体类
for(int i = 0; i < jsonArray.size(); i++) {     
    JSONObject jobj = jsonArray.getJSONObject(i);
    Object object = (Object)JSONObject.toBean(jobj, Object.class);
}
//  将保存单个对象的json字符串转换为JSONObject对象
JSONObject jsonObject = JSONObject.fromObject(json);
//  获取jsonObject的某一个属性
String value =  (String)jsonObject.get("key");


本文出自 “Zero的技术之路” 博客,请务必保留此出处http://zerohou.blog.51cto.com/3019528/1614999

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。