我的应用程序中有此代码。它接受edittext的值
if (ans.equalsIgnoreCase("bag")) {
btnEnter.setEnabled(false);
int a=Integer.parseInt(textView2.getText().toString());
int b=a+10;
String s1 = String.valueOf(b);
textView2.setText(s1);
Toast.makeText(getApplicationContext(), "Correct",Toast.LENGTH_SHORT).show();
我的问题是,如果用户在edittext中放置一个空格然后继续“bag”它仍然提示错误,例如
“”=空间
“”包-----错了 包-----正确
我如何用空间设置它可以接受
答案 0 :(得分:2)
String ans2 = ans.trim();
if (ans2.equalsIgnoreCase("bag")) {
btnEnter.setEnabled(false);
int a=Integer.parseInt(textView2.getText().toString());
int b=a+10;
String s1 = String.valueOf(b);
textView2.setText(s1);
Toast.makeText(getApplicationContext(), "Correct",Toast.LENGTH_SHORT).show();
返回字符串的副本,包含前导和尾随空格 删去。
由于@ρяσѕρєяK在我回到删除之前删除了他的答案,我将添加他的简化编辑。变化
if (ans2.equalsIgnoreCase("bag")) {
到
if (ans.trim().equalsIgnoreCase("bag")) {
然后不需要
String ans2 = ans.trim();
但在某些情况下,使用第二个变量对于可读性或功能可能更好
修改强> 要在空间之间进行处理,您可以尝试
if (!ans.contains("") && ans.trim().equalsIgnoreCase("bag")) {
不确定为什么不起作用,但您可以使用replace
的{{1}}功能
Strings