java Android在运算符和TextView值方面存在问题
为什么当所有3个文本字段仍然包含“输入日期”、“开始时间”和“结束时间”时,代码仍在执行
CharSequence x = startDateDisplay.getText();
CharSequence y = startTimeDisplay.getText();
CharSequence z = endTimeDisplay.getText();
Log.d(TAG, "validate on save: "+ x + " " + y + " " + z );
if(startDateDisplay.getText() != "Enter Date" &&
startTimeDisplay.getText() != "Start Time" &&
endTimeDisplay.getText() != "End Time" )
{
//excecute code
}
else
{
Toast.makeText(this, "Please fill in all fields", Toast.LENGTH_SHORT).show();
}
# 1 楼答案
试着这样做:
它应该可以工作,因为您现在得到的是一个对象,而您真正想要的是来自该对象的CharSequence值,即
'Enter Date'
、'Start Time'
和'End Time'
# 2 楼答案
对于字符串比较,请使用
String.equals()
方法: