处理逗号分隔的字符串

时间:2017-03-10 10:48:00

标签: android

创建一个应用程序,其中我想从json获取字符串,但我有一个键和多个值,所以我不知道如何处理它。

"colours": "#fff600,#000000,#ffffff,#00000,#ff9900,#333333"

并希望在不同的课程中使用这种颜色:

final ValueAnimator colorAnimation = ValueAnimator.ofObject(new android.animation.ArgbEvaluator(), Color.RED, Color.BLUE,Color.WHITE,Color.YELLOW,Color.CYAN,Color.MAGENTA,Color.GREEN,Color.GRAY);
    colorAnimation.setDuration(1400); 

4 个答案:

答案 0 :(得分:1)

将颜色的值放在字符串变量中,然后按照以下方式拆分字符串并将其添加到arraylist中:

    String[] arr = str.split(",");
    ArrayList<String> arr1 = new ArrayList<String>();
    for (int i=0; i<arr.length; i++){
        arr1.add(arr[i]);
    }

答案 1 :(得分:1)

获取颜色值并使用&#39;,&#39;&#39;像这样的delima:

       StringTokenizer stringTokenizer = new StringTokenizer(colorValueString, ",");

还有stringTokenizer.nextToken来获取字符串

中的下一个颜色

答案 2 :(得分:0)

您可以将颜色的值作为字符串获取,然后将字符串拆分为以下部分:

String colours = json.getString("colours");
Log.d(TAG, colours);

String items[] = colours.split(",");
for (String item : items) {
    Log.d(TAG, item);
}

答案 3 :(得分:0)

如果你拥有json
你应该使用JSONArray:

"colours": ["#fff600","#000000","#ffffff","#00000","#ff9900","#333333"]

并阅读

    JSONObject json = ...;
    JSONArray colorsArray = json.getJSONArray("colours");
    for(int i = 0; i < colorsArray.length(); i++) {
        String colorString = colorsArray.getString(i);
        int color = Color.parseColor(colorString);
        // you should probably also catch IllegalArgumentException for wrong input
    }

如果您不拥有json
您可以将其作为字符串阅读并以逗号分隔:

    JSONObject json = ...;
    String colorsString = json.getString("colours");
    String[] colorStrings = colorsString.split(",");
    for(String string : colorStrings) {
        int color = Color.parseColor(string);
        // you should probably also catch IllegalArgumentException for wrong input
    }