文章目录

  • 1 摘要
  • 2 核心代码
  • 3 使用与测试

1 摘要

项目中可能会用到的一个功能,将数组格式的字符串转为数组(String to Array),在 Java 8 中 Arrays 类提供了一些常用的转换方法,包括 int,double,long 类型的数组,这使得数据转换非常的方便。然而在转换成封装类数组的地方,却并没有提供对应的方法。为了操作方便,这里将几种常见的字符串转数组的方法封装到一个工具类中,以便后期使用。

2 核心代码

com.ljq.demo.util.StringArrayUtil.java
package com.ljq.demo.util;import java.util.Arrays;/*** @Description: 字符串转数组工具* @Author: junqiang.lu* @Date: 2021/1/19*/
public class StringArrayUtil {private StringArrayUtil(){}/*** 数组格式字符串转 String 数组** @param source* @return*/public static String[] toStringArray(String source) {return source.substring(1,source.length()-1).split(",");}/*** 数组格式字符串转 int 数组** @param source* @return*/public static int[] toIntArray(String source) {return Arrays.stream(toStringArray(source)).mapToInt(Integer::parseInt).toArray();}/*** 数组格式字符串转 long 数组** @param source* @return*/public static long[] toLongArray(String source) {return Arrays.stream(toStringArray(source)).mapToLong(Long::parseLong).toArray();}/*** 数组格式字符串转 double 数组** @param source* @return*/public static double[] toDoubleArray(String source) {return Arrays.stream(toStringArray(source)).mapToDouble(Double::parseDouble).toArray();}/*** 数组格式字符串转 Integer 数组** @param source* @return*/public static Integer[] toIntegerArray(String source) {String[] strings = toStringArray(source);Integer[] integers = new Integer[strings.length];for (int i = 0; i < strings.length; i++) {integers[i] = Integer.parseInt(strings[i]);}return integers;}}

3 使用与测试

com.ljq.demo.util.StringArrayUtilTest.java
package com.ljq.demo.util;import org.junit.Test;import java.util.Arrays;import static org.junit.Assert.*;public class StringArrayUtilTest {private String source = "[1,3,5,7,9]";@Testpublic void toStringArray() {System.out.println(Arrays.toString(StringArrayUtil.toStringArray(source)));// [1, 3, 5, 7, 9]}@Testpublic void toIntArray() {System.out.println(Arrays.toString(StringArrayUtil.toIntArray(source)));// [1, 3, 5, 7, 9]}@Testpublic void toLongArray() {System.out.println(Arrays.toString(StringArrayUtil.toLongArray(source)));// [1, 3, 5, 7, 9]}@Testpublic void toDoubleArray() {System.out.println(Arrays.toString(StringArrayUtil.toDoubleArray(source)));// [1.0, 3.0, 5.0, 7.0, 9.0]}@Testpublic void toIntegerArray() {System.out.println(Arrays.toString(StringArrayUtil.toIntegerArray(source)));// [1, 3, 5, 7, 9]}
}

Java数组格式字符串转数组相关推荐

  1. 将字符串,数组等任意格式转为json(JSON)数据,Arrays是数组工具类,将任意数组转字符串或数组操作

    1:将字符串数据转json数组返回给前端,注意使用的类是alibaba的 import com.alibaba.fastjson.JSONArray; JSONArray.parse(String t ...

  2. C语言:字符串数组与字符串指针数组

    1,首先,不论是局部,静态还是全局数组都必须在定义的时候初始化,否则就得通过其他方式,eg 循环操作,字符串处理函数strcpy() 2,附以下代码: 主要完成将"I am from chi ...

  3. vue表单校验json数组格式和普通数组格式数据

    1.效果图 说明:3种动作,对应3种验证规则,动作1:数字对象或数组均可(空也可):动作2:只有数组对象可通过验证:动作3:数字类型可通过验证 2.代码实现 (1)template(注意这里的循环数据 ...

  4. java JSON格式字符串数组 转 数组

    String goodBeanStr = bean.getGood_list();//获得josn格式字符串 JSONArray jsonArr = JSONArray.fromObject(good ...

  5. hive中存Array类型的数据的案例,将字符串的数组格式转成数组的字符串,自定义函数方式处理‘[12,23,23,34]‘字符串格式的数据为array<int>格式的数据。

    1.创建表带有Array的表: create table t_afan_test ( info1 array<int>, info2 array<string> ) ROW F ...

  6. java字符串的字节数组_Java字节数组到字符串到字节数组

    我正在尝试将byte []转换为字符串,将byte []的字符串表示形式转换为byte []的转换...我将byte []转换为要发送的字符串,然后我期望我的Web服务(用python编写)将数据直接 ...

  7. java 字符串 字节数组_字符串到字节数组,字节数组到Java中的字符串

    java 字符串 字节数组 Today we will learn how to convert String to byte array in java. We will also learn ho ...

  8. java数组转为字符串_java数组转字符串要如何转换?一般有几种方法?

    数组是java中一个重要的类型,小伙伴们知道如何将数组转为字符串吗?下面就让小编为你介绍一下吧. 在数组中直接用 toString()方法返回的并非常常并非我们想要的字符串,而是[类型@哈希值],其原 ...

  9. php 数组格式的字符串转为数组_PHP 字符串转数组 | 剑花烟雨江南

    在开发过程中,我们经常遇到需要将字符串转为数组的情况.PHP内置了explode函数,可以将字符串按特定的分解符分割成数组. explode函数可以传入三个参数: 分隔符(必填),字符串(必填),数组 ...

最新文章

  1. 人人都会Vue,你的优势在哪里?
  2. NAR:测序数据鉴别和去除rRNA序列利器RiboDetector
  3. Nginx配置:nginx如何配置跳转fpm
  4. python 比较两个yaml文件
  5. ASP.NET 如何取得 Request URL 的各個部分
  6. form表单的两种提交方式,submit和button的用法
  7. ORACLE纯SQL实现多行合并一行
  8. bzoj 4921: [Lydsy六月月赛]互质序列
  9. Java强引用、软引用、弱引用、虚引用的区别
  10. 非一体式台式计算机,一体台式机推荐及介绍【详解】
  11. 好看的个人介绍引导页PHP源码
  12. python装饰器详解-python中的装饰器详解
  13. 易筋SpringBoot 2.1 | 第廿篇:SpringBoot的复杂JPA以及源码解析
  14. 手游开发者的渠道之困
  15. android 和 js 之间交互的封装
  16. 傅里叶变换(FT)和傅里叶逆变换(IFT)推导
  17. CGT Asia 2023第三届亚洲细胞与基因治疗创新峰会将于4月上海召开
  18. Oracle 中一些主要的V$视图种类
  19. WIN10解决蓝屏SYSTEM_THREAD_EXCEPTION_NOT_HANDLED报错过程记录
  20. bgp机房是先进的IDC机房产品

热门文章

  1. 再见只是陌生人?聊一聊数据可视化工具的运营模式
  2. [Win7安装]安装程序无法创建新的系统分区,也无法定位现有系统分区(转载)
  3. WCF通过配置文件搭建—— 一起嗨
  4. 买华为还是买小米?听专业人士说说!
  5. JDI3D 引擎阶段性工作总结
  6. 解决手机无法连接【小米AI音箱】播放音乐问题
  7. 益百分与爱同行演绎健康品牌新温度
  8. 【二分答案+线性规划】装备合成
  9. 【Excel VBA】新建工作表-踩坑多年经验教训
  10. java 微信 接收消息_微信公众平台开发教程Java版(三) 消息接收和发送