ConvertUtil数据转化工具类

你的名字 2023-10-08 09:46 58阅读 0赞
  1. import java.io.ByteArrayInputStream;
  2. import java.io.ByteArrayOutputStream;
  3. import java.io.IOException;
  4. import java.io.ObjectInputStream;
  5. import java.io.ObjectOutputStream;
  6. import java.math.BigDecimal;
  7. import java.math.BigInteger;
  8. import java.text.ParseException;
  9. import java.text.SimpleDateFormat;
  10. import java.util.ArrayList;
  11. import java.util.Arrays;
  12. import java.util.Date;
  13. import java.util.HashSet;
  14. import java.util.List;
  15. import java.util.Set;
  16. import com.google.common.collect.Lists;
  17. public class ConvertUtil {
  18. public static void main(String[] args) {
  19. List<String> list = Lists.newArrayList();
  20. list.add(null);
  21. for (int i = 0; i < 10; i++) {
  22. list.add(String.valueOf(i));
  23. }
  24. System.out.println(list2String(list, ","));
  25. System.out.println(obj2Double(""));
  26. }
  27. @SuppressWarnings("unchecked")
  28. public static <T> List<T> array2List(T... src) {
  29. if (src == null || src.length <= 0) {
  30. return null;
  31. }
  32. // return Stream.of(src).collect(Collectors.toList());
  33. List<T> result = new ArrayList<T>();
  34. for (T t : src) {
  35. if (t == null) {
  36. continue;
  37. }
  38. result.add(t);
  39. }
  40. return result;
  41. }
  42. @SuppressWarnings("unchecked")
  43. public static <T> Set<T> array2Set(T... src) {
  44. if (src == null || src.length <= 0) {
  45. return null;
  46. }
  47. // return Stream.of(src).collect(Collectors.toSet());
  48. Set<T> result = new HashSet<T>();
  49. for (T t : src) {
  50. if (t == null) {
  51. continue;
  52. }
  53. result.add(t);
  54. }
  55. return result;
  56. }
  57. public static byte[] obj2bytes(Object src) throws IOException {
  58. if (src == null) {
  59. return null;
  60. }
  61. ByteArrayOutputStream out = new ByteArrayOutputStream();
  62. ObjectOutputStream output = new ObjectOutputStream(out);
  63. output.writeObject(src);
  64. byte[] result = out.toByteArray();
  65. output.close();
  66. out.close();
  67. return result;
  68. }
  69. public static Object bytes2obj(byte[] src) throws IOException, ClassNotFoundException {
  70. if (src == null) {
  71. return null;
  72. }
  73. ByteArrayInputStream in = new ByteArrayInputStream(src);
  74. ObjectInputStream input = new ObjectInputStream(in);
  75. Object result = input.readObject();
  76. input.close();
  77. in.close();
  78. return result;
  79. }
  80. public static long date2sec(Date src) {
  81. if (src == null) {
  82. return 0;
  83. }
  84. return src.getTime() / 1000;
  85. }
  86. public static Date sec2Date(Long src) {
  87. if (src == null) {
  88. return null;
  89. }
  90. return new Date(src * 1000);
  91. }
  92. public static long yuan2cent(Double src) {
  93. if (src == null) {
  94. return 0;
  95. }
  96. BigDecimal bd1 = BigDecimal.valueOf(src);
  97. BigDecimal bd2 = BigDecimal.valueOf(100);
  98. return bd1.multiply(bd2).longValue();
  99. }
  100. public static double cent2yuan(Long src) {
  101. if (src == null) {
  102. return 0;
  103. }
  104. BigDecimal bd1 = BigDecimal.valueOf(src);
  105. BigDecimal bd2 = BigDecimal.valueOf(100);
  106. return bd1.divide(bd2).doubleValue();
  107. }
  108. public static List<String> string2List(String src, String separator) {
  109. if (src == null) {
  110. return null;
  111. }
  112. if (separator == null) {
  113. return null;
  114. }
  115. String[] strings = src.split(separator);
  116. return Arrays.asList(strings);
  117. // return Stream.of(strings).collect(Collectors.toList());
  118. }
  119. public static String list2String(List<String> src, String delimiter) {
  120. if (src == null) {
  121. return null;
  122. }
  123. if (delimiter == null) {
  124. return null;
  125. }
  126. return String.join(delimiter, src);
  127. }
  128. public static String obj2String(Object src) {
  129. if (src == null) {
  130. return null;
  131. }
  132. return src.toString();
  133. }
  134. public static Date obj2Date(Object src) throws ParseException {
  135. if (src == null) {
  136. return null;
  137. }
  138. if (src instanceof Date) {
  139. return (Date) src;
  140. }
  141. if (src instanceof String) {
  142. String s = src.toString();
  143. if ("".equals(s)) {
  144. return null;
  145. }
  146. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  147. return sdf.parse(s);
  148. }
  149. return null;
  150. }
  151. public static BigInteger obj2BigInteger(Object src) {
  152. if (src == null) {
  153. return null;
  154. }
  155. if (src instanceof BigInteger) {
  156. return (BigInteger) src;
  157. }
  158. if (src instanceof String) {
  159. String s = src.toString();
  160. if ("".equals(s)) {
  161. return null;
  162. }
  163. return new BigInteger(s);
  164. }
  165. return null;
  166. }
  167. public static byte obj2byte(Object src) {
  168. Byte n = obj2Byte(src);
  169. if (n == null) {
  170. return 0;
  171. }
  172. return n.byteValue();
  173. }
  174. public static Byte obj2Byte(Object src) {
  175. if (src == null) {
  176. return null;
  177. }
  178. if (src instanceof Number) {
  179. return ((Number) src).byteValue();
  180. }
  181. if (src instanceof String) {
  182. String s = src.toString();
  183. if ("".equals(s)) {
  184. return null;
  185. }
  186. return Byte.parseByte(s);
  187. }
  188. return null;
  189. }
  190. public static short obj2short(Object src) {
  191. Short n = obj2Short(src);
  192. if (n == null) {
  193. return 0;
  194. }
  195. return n.shortValue();
  196. }
  197. public static Short obj2Short(Object src) {
  198. if (src == null) {
  199. return null;
  200. }
  201. if (src instanceof Number) {
  202. return ((Number) src).shortValue();
  203. }
  204. if (src instanceof String) {
  205. String s = src.toString();
  206. if ("".equals(s)) {
  207. return null;
  208. }
  209. return Short.parseShort(s);
  210. }
  211. return null;
  212. }
  213. public static int obj2int(Object src) {
  214. Integer n = obj2Integer(src);
  215. if (n == null) {
  216. return 0;
  217. }
  218. return n.intValue();
  219. }
  220. public static Integer obj2Integer(Object src) {
  221. if (src == null) {
  222. return null;
  223. }
  224. if (src instanceof Number) {
  225. return ((Number) src).intValue();
  226. }
  227. if (src instanceof String) {
  228. String s = src.toString();
  229. if ("".equals(s)) {
  230. return null;
  231. }
  232. return Integer.parseInt(s);
  233. }
  234. return null;
  235. }
  236. public static long obj2long(Object src) {
  237. Long n = obj2Long(src);
  238. if (n == null) {
  239. return 0;
  240. }
  241. return n.longValue();
  242. }
  243. public static Long obj2Long(Object src) {
  244. if (src == null) {
  245. return null;
  246. }
  247. if (src instanceof Number) {
  248. return ((Number) src).longValue();
  249. }
  250. if (src instanceof String) {
  251. String s = src.toString();
  252. if ("".equals(s)) {
  253. return null;
  254. }
  255. return Long.parseLong(s);
  256. }
  257. return null;
  258. }
  259. public static float obj2float(Object src) {
  260. Float n = obj2Float(src);
  261. if (n == null) {
  262. return 0;
  263. }
  264. return n.floatValue();
  265. }
  266. public static Float obj2Float(Object src) {
  267. if (src == null) {
  268. return null;
  269. }
  270. if (src instanceof Number) {
  271. return ((Number) src).floatValue();
  272. }
  273. if (src instanceof String) {
  274. String s = src.toString();
  275. if ("".equals(s)) {
  276. return null;
  277. }
  278. return Float.parseFloat(s);
  279. }
  280. return null;
  281. }
  282. public static double obj2double(Object src) {
  283. Double n = obj2Double(src);
  284. if (n == null) {
  285. return 0;
  286. }
  287. return n.doubleValue();
  288. }
  289. public static Double obj2Double(Object src) {
  290. if (src == null) {
  291. return null;
  292. }
  293. if (src instanceof Number) {
  294. return ((Number) src).doubleValue();
  295. }
  296. if (src instanceof String) {
  297. String s = src.toString();
  298. if ("".equals(s)) {
  299. return null;
  300. }
  301. return Double.parseDouble(s);
  302. }
  303. return null;
  304. }
  305. public static Boolean obj2Boolean(Object src) {
  306. if (src == null) {
  307. return null;
  308. }
  309. if (src instanceof Boolean) {
  310. return (Boolean) src;
  311. }
  312. Integer n = obj2Integer(src);
  313. if (n == null) {
  314. return null;
  315. }
  316. if (n > 0) {
  317. return Boolean.TRUE;
  318. }
  319. return Boolean.FALSE;
  320. }
  321. }

发表评论

表情:
评论列表 (有 0 条评论,58人围观)

还没有评论,来说两句吧...

相关阅读