Java Android中SimpleDate转换字符串的检查条件

Java Android中SimpleDate转换字符串的检查条件,java,android,Java,Android,我正在尝试对我知道已正确格式化的字符串执行一个简单的IF检查: Calendar c = Calendar.getInstance(); SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy"); String formattedDate = df.format(c.getTime()); 此时,形成日期为2015年9月24日。我可以证实这是真的: remoteViews.setTextViewText( R.id.widget_date

我正在尝试对我知道已正确格式化的字符串执行一个简单的IF检查:

Calendar c = Calendar.getInstance();
SimpleDateFormat df = new SimpleDateFormat("MM/dd/yyyy");
String formattedDate = df.format(c.getTime());
此时,形成日期为2015年9月24日。我可以证实这是真的:

remoteViews.setTextViewText( R.id.widget_date, formattedDate);
它告诉我正确的日期。所以我知道这很好。 所以我测试它:

if (formattedDate=="09/24/2015"){
//do some stuff
}
不管出于什么原因,这种情况都不是真的,什么也没有发生。 从删除斜杠到改变格式,我都试过了,但是formattedDate从来都不等于字符串的确切值

这里缺少什么吗?

使用.equals比较字符串。像这样

if (formattedDate.equals("09/24/2015")){
    //do some stuff
}
==测试引用相等性,因此a和b是否引用同一对象
.equals另一个对象测试值是否相等,a和b在逻辑上是否相等?!我并不怀疑你,因为我以前见过。但为什么会这样呢?为什么==不适用于此?请详细说明。@DurbnPoison使用你的google fu。我用过了。除非我问错了问题。我是在假设日期转换是问题的基础上运行的。我认为这并不像使用不正确的运算符进行比较那么简单。我有12个应用程序在Google Play上运行。我从来没有遇到过这个问题。一次也没有。