1. 程式人生 > >Android黃色警告彙總

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),
                            c.get(Calendar.MONTH) + 1, c.get(Calendar.DAY_OF_MONTH));

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

("SimpleDateFormat")

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