我想做什么:
我有一个
TextView
我希望每天都能展示一年的报价 新报价。
详细信息:
为此,我想将当前日期+月与给定的字符串日期+月进行比较。 鉴于日期格式为 dd-MM (我不希望当年)
如何比较日期?
答案 0 :(得分:0)
此:
"18-03-2017".substring(0, 5);
将返回“18-03”,因为它从索引0到索引5需要一个子字符串(请记住,由于索引行为,它实际上从0变为4)。
因此,如果您将日期存储在名为“date”的变量中,那么就像这样:
date.substring(0, 5);
如果你想将新日期存储在变量中,它将是这样的:
var = date.substring(0, 5);
希望它有所帮助。
答案 1 :(得分:0)
可以尝试类似:
import java.text.*
String dateStr = "18-03"
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM")
Date currentDate = new Date()
if( dateStr.equals(sdf.format(currentDate)) ){
System.out.println("dates are the same")
}else{
System.out.println("dates are different!")
}
因此,只需使用SimpleDateFormat类将日期格式化为仅包含日期和月份的字符串,并将其与您拥有的日期字符串进行比较
答案 2 :(得分:0)
@Ignacia Valdes Zamudio这是我的代码。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
quote = new String("The Quote under else block is showing");
mtv = (TextView) findViewById(R.id.textView);
String datestr = "19-03";
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM");
Date currentDate = new Date();
if (datestr.equals(sdf.format(currentDate))) {
mtv.setText("today date is 18 of march");
}
else {
mtv.setText(quote);
}
错误告诉我这一行。
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM");
Android Studio表示此类不支持API 24.支持STUDIO的消息**调用需要API级别24(当前最小值为23):android.icu.text.SimpleDateFormat #SimpleDateFormat less ...(Ctrl + F1)**