使用字符串填充字符串数组? (JAVA)

时间:2013-03-13 00:04:36

标签: java string arrays

我在网站上寻找一些类似的答案,但到目前为止我还没有找到任何东西。我想知道如何使用预先建立的字符串填充字符串数组。另外,如果我有一个单独的类,我会将此代码包含在方法或构造函数中吗?

字符串:

String stateList = "Alabama^Alaska^Arizona^Arkansas^California^Colorado^Connecticut^Delaware^Florida^"
            + "Georgia^Hawaii^Idaho^Illinois^Indiana^Iowa^Kansas^Kentucky^Louisiana^Maine^Maryland^"
            + "Massachusetts^Michigan^Minnesota^Mississippi^Missouri^Montana^Nebraska^Nevada^"
            + "New Hampshire^New Jersey^New Mexico^New York^North Carolina^North Dakota^Ohio^Oklahoma^"
            + "Oregon^Pennsylvania^Rhode Island^South Carolina^South Dakota^Tennessee^Texas^Utah^"
            + "Vermont^Virginia^Washington^West Virginia^Wisconsin^Wyoming";

我的尝试(没有用):

String[] stateArray = stateList.split(" ^ ");
    for(int i=0; i < stateArray.length; i++)

2 个答案:

答案 0 :(得分:5)

^字符有special meanings in regular expressions;提供一个反斜杠字符(它本身需要在Java中进行转义),以便split将其解释为文字^

String[] stateArray = stateList.split("\\^");

答案 1 :(得分:2)

尝试使用split.("\\^")。此方法使用正则表达式,正则表达式中的^具有special meaning(在这种情况下是输入数据的开始)。要逃避它,您需要将\^传递给正则表达式引擎,因此您需要使用\\^表单。