如何在android中正确执行if?
有人能告诉我为什么即使我在编辑文本字段中输入如何在android中正确执行if?,android,Android,有人能告诉我为什么即使我在编辑文本字段中输入ran,然后按ok,也不会执行if语句吗?当用户输入ran并按下“确定”按钮时,我希望另一个按钮变为可见,使他能够停止当前活动。基本上我想知道为什么跳过if public class Reciever extends Activity{ protected static final String TAG = null; private Button ok,stp; private TextView tv; privat
ran
,然后按ok,也不会执行if
语句吗?当用户输入ran
并按下“确定”按钮时,我希望另一个按钮变为可见,使他能够停止当前活动。基本上我想知道为什么跳过if
public class Reciever extends Activity{
protected static final String TAG = null;
private Button ok,stp;
private TextView tv;
private EditText ev;
private String s1,s2,s3,s4;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
s1="nar";
setContentView(R.layout.stop);
tv=(TextView) findViewById(R.id.textView1);
tv.setText(s1);
ev=(EditText) findViewById(R.id.editText1);
ok=(Button) findViewById(R.id.ok_button);
ok.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
s2="ran";
tv.setText(ev.getText().toString());
s3=ev.getText().toString();
if(s3==s2)//not going inside this loop
{
stp=(Button) findViewById(R.id.stopb);
stp.setVisibility(View.VISIBLE);
stp.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
finish();
}
});
}
}
});
}
}
只需将上面的行替换为下面的行
if(s3.equalsIgnoreCase(s2))//no
使用
.equals
而不是=
来比较两个字符串的值
if (s2.equals(s3))
使用
==
测试参考等式。两个字符串可以包含相同的字符,但引用不同。不能将文本与==进行比较,需要使用等于
if(s3.equals(s2))
它不是所谓的
if循环。这是一个if语句
。它不会创建循环。它会强制活动终止,表示线程退出时未捕获异常,因为您正在另一个单击事件中写入一个单击事件
if(s3.equals(s2))