Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用返回上一行的空格替换换行符_Java_Android_Android Checkbox - Fatal编程技术网

Java 用返回上一行的空格替换换行符

Java 用返回上一行的空格替换换行符,java,android,android-checkbox,Java,Android,Android Checkbox,我的应用程序中有一个名为“巧克力”的复选框。选中后,它会打印“添加巧克力!\n”。但是,当我在选中后取消选中它,并将其替换为“”(无字符串)时,它将被替换为新行。每次勾选/取消勾选时,行数不断增加。 所以我的问题是如何用退格替换整个字符串?这样,下一个项目应该打印在同一行,而不是巧克力 public void onCheck(视图检查视图){ 字符串checkMessage=“”; 布尔选中=((复选框)checkView).isChecked(); checkMessage+=“\n”; 开关

我的应用程序中有一个名为“巧克力”的复选框。选中后,它会打印“添加巧克力!\n”。但是,当我在选中后取消选中它,并将其替换为“”(无字符串)时,它将被替换为新行。每次勾选/取消勾选时,行数不断增加。 所以我的问题是如何用退格替换整个字符串?这样,下一个项目应该打印在同一行,而不是巧克力

public void onCheck(视图检查视图){
字符串checkMessage=“”;
布尔选中=((复选框)checkView).isChecked();
checkMessage+=“\n”;
开关(checkView.getId()){
案例R.id.巧克力:
如果(选中){
checkMessage+=“添加了巧克力。\n”;
} 
否则{
checkMessage=checkMessage.replaceAll(“添加了巧克力。\n”,”);
}
打破
}
checkMessage+=“\n”;
...

请删除这两个
检查消息+=“\n”
。因为它没有任何作用

您的问题是以下几行:检查消息+=“\n”; 从您的代码中可以看出,无论是否选中复选框,都会在字符串checkMessage中添加一个换行符。因为您似乎有两个换行符,所以每次选中/取消选中时,换行符的数量都会增加2。因此,除非它们有用途,否则删除它们将阻止换行符的增加

或者,为了直接回答您的问题,退格的java转义序列是\b,但是我不知道添加它是否能解决您的问题