baidu_37252709
lPsycongroo
2017-11-23 07:02
采纳率: 61.1%
浏览 949
已采纳

java 数据集合转换,大神来指点下

数据库存的数据是这样的:["192.168.1.1", "192.168.1.2-192.168.1.255", "192.168.1.0/24"]
这是什么数据类型,不是json吧,想要转换成list,或者string[] ,怎么做

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

10条回答 默认 最新

  • a314066646
    FEN_TA 2017-11-23 07:45
    已采纳

    用fastjson 直接转成jsonArray 就可以了

    点赞 评论
  • Druning
    栗悟饭和龟仙人 2017-11-23 07:09

    用java的JSON库可以直接转成String数组

    点赞 评论
  • Royal_lr
    Royal_lr 2017-11-23 07:39

    直接替换拆分就行了,

     String str="[\"192.168.1.1\", \"192.168.1.2-192.168.1.255\", \"192.168.1.0/24\"]";
            String arr[]=str.replaceAll("\\[","").replaceAll("\\]","").split(",");
    
    点赞 评论
  • a314066646
    FEN_TA 2017-11-23 07:49

    图片说明

    点赞 评论
  • qq_23126581

    办法两种,一:用json转string[],第二就是和楼上说的,拆分了,把[ ]中括号去掉(用替换也行),然后用字符串的分割就行了,

    点赞 评论
  • weixin_29343325
    always_oline_paul 2017-11-23 08:18

    数据库中应该是存储了 varchar类型 对应的就是String 类型
    你可以用String 类型的 replace方法 进行 进行替换 把冒号和[] 替换成空格
    数据此时变成这样 192.168.1.1, 192.168.1.2-192.168.1.255, 192.168.1.0/24
    再使用String 的split 方法以逗号 进行分割 string.split(',');
    数据就变成一个数组了

    点赞 评论
  • FlyAngle1

    图片说明

    点赞 评论
  • merryxuan
    元气满满的轩哥 2017-11-24 07:47

    本身就应该是个List类型吧?

    点赞 评论
  • qq_39048075
    时光一去不在 2017-11-24 14:20

    先把这个通过json.jsonobject转换成json,然后在用json.jsonarray转成list

    点赞 评论
  • baidu_37252709
    lPsycongroo 2017-12-04 09:58

    最后通过转jsonarray的方法解决了,用字符串替代的方法也可以,但每次都会去匹配,效率明显低的

    点赞 评论

相关推荐