【问题标题】:Array.toString data handling in JavaJava 中的 Array.toString 数据处理
【发布时间】:2013-04-28 23:54:56
【问题描述】:

在这种情况下,我对这里处理数据的方式感到困惑,我想寻求某人的建议。

arrayDataOne = [ HEllO, NAME, ADDRESS, ZIPCODE ] 

i.e  
[0] = "HELLO"   
[1] = "NAME"   
[2] = "ADDRESS"   
[3] = "ZIPCODE"

String arrayInString = ( Arrays.toString(arrayDataOne));

i.e
[ HEllO, NAME, ADDRESS, ZIPCODE ] 

String[] arraySplit = arrayInString.split("\\|");

i.e
[0] = [[HEllO, NAME, ADDRESS, ZIPCODE ] ] 

问题,
为什么字符串值显示为数组,虽然逻辑上它没有作为数组存储在 arrayInString 中?

为什么 arraySplit 在 [[ ****data**** ]] 中保存数据?看起来像数组?

已编辑:(添加了更多答案详情)

要处理没有 "[" "]" 的字符串:阅读link

【问题讨论】:

    标签: java tostring arrays array-difference


    【解决方案1】:
    1. 因为这就是 .toString 的作用。阅读文档http://docs.oracle.com/javase/6/docs/api/java/util/Arrays.html

      返回指定内容的字符串表示 大批。字符串表示由数组的列表组成 元素,括在方括号 ("[]") 中。相邻元素是 用字符“,”(逗号后跟空格)分隔。 通过 String.valueOf(double) 将元素转换为字符串。 如果 a 为 null,则返回“null”。

    2. 因为当你尝试拆分它时它不匹配任何东西。因此,结果是字符串本身的单个存储桶

    【讨论】:

    • 所以如果我只对没有 [ ] 的 HEllO、NAME、ADDRESS、ZIPCODE 的纯字符串感兴趣,我应该对其进行正则表达式替换吗?还是这是一种不好的做法?
    • 如果你想要它作为数组,那么不要使用 .toString。你到底想做什么?
    • 感谢我确实找到了答案,使用 StringBuilder 创建字符串。
    猜你喜欢
    • 1970-01-01
    • 2016-04-20
    • 1970-01-01
    • 2021-10-26
    • 1970-01-01
    • 2017-03-12
    • 1970-01-01
    • 2013-01-10
    • 2011-01-10
    相关资源
    最近更新 更多