當我比較demDigits.equals(Numbers [i] [j])時,if僅對於2d數組中的最後一個值是666, 111-555的其他值都是錯誤的。想不通爲什麼比較字符串與2d字符串數組,只比較數組的最後一個值
public class MainActivity extends AppCompatActivity {
EditText digits;
EditText console;
Button press;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final String[][] Numbers = {
{"111", "222"},
{"333", "444"},
{"555", "666"}
};
digits = (EditText) findViewById(R.id.editText4);
console = (EditText) findViewById(R.id.editText5);
press = (Button) findViewById(R.id.button3);
press.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final String demDigits = digits.getText().toString();
for (int i = 0; i < Numbers.length; i++)
{
for(int j = 0; j < Numbers[i].length; j++)
{
if (demDigits.equals(Numbers[i][j]))
{
console.setText("works");
//break;
}
else
{
console.setText("nope");
}
}
}
}
});
}
}
如果'break'該循環您只打破了內環內。不知道這是你想要的,但你可以使用[標籤循環](http://stackoverflow.com/q/3821827/7366707)來突破外部循環。 – Moira
這就是評論,我試圖停止循環時,等於是真實的,但沒有幫助。不需要休息解決方案。 – magetogi
我正在談論的事實是,你並沒有用這個break語句停止整個循環。 – Moira