Android黃色警告彙總
1、
String day = String.format("%4d-%02d-%02d", c.get(Calendar.YEAR), c.get(Calendar.MONTH) + 1, c.get(Calendar.DAY_OF_MONTH)); 在Android中使用上面的程式碼格式化字串,結果報出黃色警告!提示如下圖所示: 解決方案:
新增Locale.getDefault()
修改後如下:
String day = String.format(Locale.getDefault(), "%4d-%02d-%02d", c.get(Calendar.YEAR),2.
Warning:
// To get local formatting use getDateInstance(), getDateTimeInstance(), or
// getTimeInstance(), or use new SimpleDateFormat(String template, Locale
// locale) with for example Locale.US for ASCII dates.@SuppressLint
String string = new SimpleDateFormat("HH:mm",Locale.getDefault()).format(new Date());
解決方案:
新增Locale.getDefault()
for example,like:
SimpleDateFormat newSimpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日HH時mm分",Locale.getDefault());
3.
Warning:
Implicitly using the default locale is a common source of bugs: Use toUpperCase(Locale) instead
String string = new SimpleDateFormat("EEEE",Locale.getDefault()).format(new Date()).toUpperCase();
解決方案:
由於大寫一般只應用在英語國家,所以Locale指定為Locale.US
String string = new SimpleDateFormat("EEEE",Locale.getDefault()).format(new Date()).toUpperCase(Locale.US);
(有時警告提示仍在,需要clean下才會消除)
4、
第一:方法上新增@SuppressWarnings("unchecked")
第二:myeclipse的Window->Preferences->Java->Compiler->Errors/Warning->Generic types中Unchecked generic type operation設定為Ignore。
第三:myeclipse的Window->Preferences->Java->Compiler將Compiler compliance level 設定為小於1.5