Java 简单的格式和奇怪的警告
这是代码中带有“奇怪”警告的部分:Java 简单的格式和奇怪的警告,java,android,Java,Android,这是代码中带有“奇怪”警告的部分: public void onTick(long millisUntilFinished) { tv.setText("" + new SimpleDateFormat("mm:ss").format(new Date( millisUntilFinished))); } 警告是: 若要获取本地格式,请使用getDateInstance()、getDateTimeInstance()或getTimeInstance(),或者使用新的SimpleData
public void onTick(long millisUntilFinished) {
tv.setText("" + new SimpleDateFormat("mm:ss").format(new Date( millisUntilFinished)));
}
警告是:
若要获取本地格式,请使用getDateInstance()、getDateTimeInstance()或getTimeInstance(),或者使用新的SimpleDataFormat(字符串模板、区域设置),例如将Locale.US用于ASCII日期
这对我来说很奇怪,因为我使用SimpleDateFormat,所以我不明白为什么避免警告的建议就是要做它曾经做过的事情。此外,我在没有任何警告的情况下在其他活动中使用相同的东西
因此,我完全比较了这两个代码,没有任何差异可以解释这一点(前面提到的两个活动只有一些常量名称不同)
此外,我想知道这是否意味着进一步的问题,因为我的程序工作正常。要删除警告,只需在实例化日期格式对象时添加Locale.getDefault()作为第二个参数。例如
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",
java.util.Locale.getDefault());
要删除警告,只需在实例化日期格式对象时添加Locale.getDefault()作为第二个参数。例如
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",
java.util.Locale.getDefault());
没那么奇怪。你没有给出一个区域设置。这就是它所抱怨的,而且有很好的理由。没那么奇怪。你没有给出一个区域设置。这就是它所抱怨的,而且有很好的理由。