生成字符串数组

时间:2015-12-29 18:56:49

标签: java android arrays

我有一个像

这样的字符串
String items = "["car","van","jeep"......]";

我使用以下代码将该字符串转换为字符串数组,如下所示

String[] vehicles = {"car","van","jeep"....};

代码是

items = items.substring(1,items.length()-1); //this is to drop "[","]" brackets
String[] ret = items.split(",");
for (String arr : ret){
    returner.add(arr.substring(1,arr.length()-1)); // this is for drop "\"" 's
}
ret = new String[returner.size()];
ret = returner.toArray(ret);
return ret;

这个字符串数组用于android中的微调器。

然后我想知道有没有比这更有效的机制?

谢谢你

2 个答案:

答案 0 :(得分:0)

如果"仅用于分隔字符串,那么您可以这样做:

items = items.substring(1,items.length()-1); //this is to drop "[","]" brackets
items=items.replace("\"","");
String[] ret = items.split(",");
return ret;

答案 1 :(得分:0)

你可以通过以下方式加快速度:

items = items.substring(2,items.length()-2); //drops first+last bracket and quote
String[] ret = items.split("\",\"");//drops all quotes and commas
return ret;

否则,它是否真的导致任何性能问题,或者您是否陷入了早期优化的陷阱?