附加StringBuilder

Fro*_*oyo 10 checkbox stringbuilder android

我有5个复选框,我必须选中多个复选框.

我做了这样的代码检查复选框已选中:

sports=(CheckBox)findViewById(R.id.sports_btn);
sports.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
        if (sports.isChecked() == true)
        list.add("4");
    }
}); 
Run Code Online (Sandbox Code Playgroud)

我正在为数组列表添加一个值:

list ArrayList<String> list = new ArrayList<String>();
Run Code Online (Sandbox Code Playgroud)

我正在检索像这样的字符串值:

StringBuilder sb = new StringBuilder();
for(int  i =0; i < list.size(); i++)
{
    for (String str: list)
    {  
        sb.append(str.toString());
        sb.append(",");
    }

}
String sel_cat = sb;
Run Code Online (Sandbox Code Playgroud)

我收到字符串,但如果选择了两个值,它就像2,3,如何删除最后一个逗号?我不希望最后一个逗号字符串必须像2,3.

use*_*305 29

StringBuilder sb = new StringBuilder();
sb.deleteCharAt(sb.length()-1) 
Run Code Online (Sandbox Code Playgroud)

或者在您的代码中,使用

StringBuilder sb = new StringBuilder();

for(int  i =0;i<list.size();i++)
{
    String prefix = "";
    for (String str : list)
    { 
        sb.append(prefix);
        prefix = ",";
        sb.append(str);  
    }
}

String sel_cat = sb;
Run Code Online (Sandbox Code Playgroud)


Par*_*ani 5

你可以把条件检查:

for (String str : list)
{
   sb.append(str.toString());
   if (i!=list.size()-1)
   {
     sb.append(",");
   }
}
Run Code Online (Sandbox Code Playgroud)