1.json 字符串转换成对象

SyncCarriageStatusDTO dto= JSON.parseObject(value,SyncCarriageStatusDTO.class);

List<MQPackageParams> pparams = JSON.parseObject(dto.getData(),new TypeReference<List<MQPackageParams>>() {});

2.对象转换成字符串对象

String data = JSON.toJSONString(pkg);

2.枚举字符串转换成枚举类型

RefTypeEnum refType=RefTypeEnum.valueof(dto.getRefType())

3.对象不为空判断

CollectionUtils.isNotEmpty(carriageRefs)

4.XML字符串转换对象或进行XML操作

4.1 利用 JAXBContext

JAXBContext jaxbContext = JAXBContext.newInstance(cls);
       Unmarshaller um = jaxbContext.createUnmarshaller();
       t = (T)um.unmarshal(new StringReader(xmlStr));

4.2 利用 XStream

if(! xmap.containsKey(cls.getName())){

XStream xstream = new XStream(new DomDriver());
   xstream.processAnnotations(cls);
   xstream.ignoreUnknownElements();
   xmap.put(cls.getName(), xstream);
    }

    T t = (T) xmap.get(cls.getName()).fromXML(xmlStr);

  4.3利用 DocumentHelper.parseText(xml)

Node eventType = document.selectSingleNode("//logisticsEvent/eventHeader/eventType");
if (eventType != null && StringUtils.isNotBlank(eventType.getText())) {
type = CainiaoMessageEventTypeEnum.valueOf(eventType.getText().trim());
}

5. 枚举转换:

int packageType = PackageTypeEnum.SMALL.getIndex();

public enum PackageTypeEnum {
/**大包裹*/
BIG(1, "大包裹"),
/**小包裹*/
SMALL(2, "小包裹");

@Getter
@Setter
private int index;
@Getter
@Setter
private String name;

private PackageTypeEnum(int index,String name) {
this.index = index;
this.name = name;
}

public static String getName(int index) {
for (PackageTypeEnum s : PackageTypeEnum.values()) {
if (s.getIndex() == index) {
return s.name;
}
}
return null;
}
}

6.类型转换:

pkg.setWeight(BigDecimal.valueOf(jobPackageDTO.getWeight()));

7.字符串判断是否为空

StringUtils.isBlank(rCode)

8.数组转换成ArrayList

String[] mailNos=mailNo.replaceAll(" ", "").split(",");
List<String> mailnoList=Arrays.asList(mailNos);

9.判断对象类型:

 other instanceof DataExample;

10.数组转换成List类型

String[] arrayA = new String[] { "1", "2", "3", "3", "4", "5" };      
   String[] arrayB = new String[] { "3", "4", "4", "5", "6", "7" };              
   List<String> a = Arrays.asList(arrayA);      
   List<String> b = Arrays.asList(arrayB);

java 对类型的基本操作小结的更多相关文章

  1. Java返回类型泛型的用法小结

    Java返回类型泛型的用法小结 版权声明:本文为博主原创文章,未经博主允许不得转载. 关于Java泛型的基本用法就不多说了,主要是一个编译期的检查,也避免了我们代码中的强制转换,比较经典的用法有泛型D ...

  2. Java关键字transient和volatile小结(转)

    Java关键字transient和volatile小结(转) transient和volatile两个关键字一个用于对象序列化,一个用于线程同步,都是Java中比较高阶的话题,简单总结一下. tran ...

  3. JAVA 变量 数据类型 运算符 知识小结

    ---------------------------------------------------> JAVA 变量 数据类型 运算符 知识小结 <------------------ ...

  4. Java常见异常(Runtime Exception )小结(转)

    原文链接:Java常见异常(Runtime Exception )小结 Java异常体系结构呈树状,其层次结构图如图 1所示:           本文重在Java中异常机制的一些概念.写本文的目的在 ...

  5. java keytool证书工具使用小结

    java keytool证书工具使用小结 在Security编程中,有几种典型的密码交换信息文件格式: DER-encoded certificate: .cer, .crt    PEM-encod ...

  6. java string类型的初始化

    以下基本上是java string类型最常用的三种方法 new string()就不介绍了  基本等同于第三种 String a;  申明一个string类型的 a,即没有在申请内存地址,更没有在内存 ...

  7. java 枚举类型分析

    最近做android开发,需要用到枚举值,这样可以连续赋值,我按之前c++那样书写,如下所示: public enum ColorSelect { RED_BAGE = 0, GREEN_BAGE, ...

  8. java double类型保留两位小数4种方法【转】

    4种方法,都是四舍五入,例: import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberF ...

  9. servlet中Java连接数据库后的基本操作

    servlet中Java连接数据库后的基本操作 在eclipse中新建一个工程:login 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到; 需要知道数据库的用户名和密码 ...

随机推荐

  1. 160725、Java Map按键排序和按值排序

    按键排序(sort by key) jdk内置的Java.util包下的TreeMap<K,V>既可满足此类需求,原理很简单,其重载的构造器之一 有一个参数,该参数接受一个比较器,比较器定 ...

  2. 云计算之路:2009年Xen一个补丁背后那不为人知的故事

    仔细阅读了http://www.cnblogs.com/cmt/p/3729386.html这篇关于xen的博文,这篇博文写的挺赞的,分析的也很细致,涉及到4年前的一个patch的故事.在讲这个故事之 ...

  3. python之django直接执行sql语句

    python之django直接执行sql语句 sql = 'select * from stu' info = 模型类.objects.raw(sql)

  4. 科学计算 NumPy 与C语言对比 N-dimensional array ndarray 元素元素操作 计算正太分布分位数

    w http://www.numpy.org/ NumPy is the fundamental package for scientific computing with Python. It co ...

  5. Python菜鸟之路:Django 信号

    Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. 相当于我们创建了一个hook. 1. Django的内置信号 Mo ...

  6. JavaScript四种数值取整方法

    一.Math.trunc() 1.定义 Math.trunc()方法去除数字的小数部分,保留整数部分. 2.语法 Math.trunc(value) 3.示例 console.log(Math.tru ...

  7. python基础之类的特性(property)

    一 什么是特性propertyproperty是一种特殊的属性,访问它时会执行一段功能(函数)然后返回值. import math class Circle: def __init__(self,ra ...

  8. mysql 从零学习

    一 .下载MySQL 访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到“MySQL Community Server”下方有一个“download ...

  9. python删除目录下七天前创建的文件

    #coding=utf-8 import os import time import datetime def deleteOutdateFiles(path): """ ...

  10. C# 委托及匿名函数

    一. 为什么使用委托,代码如下:(注释掉的是没用委托之前的使用方式,没有注释的是使用了委托的) public delegate string DelProStr(string name); class ...