在Android中重新组合拆分字符串

时间:2018-07-11 11:07:06

标签: java android string

我一直在开发一个应用程序,它将允许用户选择一周中的几天。然后,这些天将通过意图发送到日历以预先填充事件的可重复性,但是rrule仅接受一周中前几天的字母。我已经能够拆分和字符串化并将星期几减少为前两个字母,但是现在我需要重新组合它们,以逗号分隔,以便可以按意图发送它们。这是我的代码:

int durationColumnIndex = mCursor.getColumnIndex(PrescriptionContract.PrescriptionEntry.COLUMN_PRESCRIPTION_FREQUENCY_DURATION);
                String duration1 = mCursor.getString(durationColumnIndex);
                String [] duration2 = duration1.split("\\s+");
                for (int x=0; x < duration2.length;x++) {
                    if (duration2[x].length() >= 2) {
                        duration2[x]= duration2[x].substring(0, 2);
                        Log.v("CatalogActivity", duration2[x] + " rows deleted from prescription database");
                    }
                }

正如您所看到的,我对如何重新组合它们一无所知。我尝试过:

String.join(“,”,duration2),但是它似乎不起作用。我的目标是基本上将“星期一星期三星期日”变成Mo,We,Su这应该是一个字符串。谢谢

2 个答案:

答案 0 :(得分:1)

您可以使用Stringbuilder

    StringBuilder stringBuilder = new StringBuilder();
    int durationColumnIndex = mCursor.getColumnIndex(PrescriptionContract.PrescriptionEntry.COLUMN_PRESCRIPTION_FREQUENCY_DURATION);
    String duration1 = mCursor.getString(durationColumnIndex);
    String[] duration2 = duration1.split("\\s+");
    for (int x = 0; x < duration2.length; x++) {
        if (duration2[x].length() >= 2) {
            duration2[x] = duration2[x].substring(0, 2);
            stringBuilder.append(duration2[x].substring(0, 2)).append((","));
            Log.v("CatalogActivity", duration2[x] + " rows deleted from prescription database");
        }
    }
    Log.v("CatalogActivity", stringBuilder.toString());

答案 1 :(得分:1)

您可以执行以下操作:String recompined = TextUtils.join(",", duration2);
,更改为所需的分度数。