null和 “”
今天碰到一個(gè)很奇怪的問(wèn)題,是從數(shù)據(jù)庫(kù)中取某個(gè)時(shí)間類(lèi)型字段的值,需要把它轉(zhuǎn)成string型,然后問(wèn)題就出來(lái)了,因?yàn)檫@個(gè)字段可能存在空值,斷點(diǎn)后走到轉(zhuǎn)string型這行就報(bào)錯(cuò)。一直沒(méi)想明白,后來(lái)老大跑過(guò)來(lái)瞄了幾眼就指出了問(wèn)題所在。高人就是高人??!
由于從數(shù)據(jù)庫(kù)讀到的空字段=null的,所以當(dāng)我toString()的時(shí)候肯定會(huì)報(bào)錯(cuò)。舉個(gè)例子:
public class test{
public test(){
Object s = null; //這比作字段的值
String s1 = s.toString(); //報(bào)錯(cuò)
System.out.println (s1);
}
public static void main(String[] a){
new test();
}
}
解決的辦法就是寫(xiě)一個(gè)方法將所有為NULL的值賦為空
public class test{
public test(){
Object s = null;
String s1 = this.strSafe(s);
System.out.println (s1); }
public static void main(String[] a){
new test();
}
public String strSafe(Object obj){
if(obj == null)
obj="";
return obj.toString();
}
}
最近我感覺(jué)越來(lái)越遲鈍了,想個(gè)很簡(jiǎn)單的for循環(huán)就要想老半天。郁悶啊,等發(fā)錢(qián)了買(mǎi)腦輕松去了
posted on 2005-10-21 20:20 瘋流成性 閱讀(237) 評(píng)論(0) 編輯 收藏 所屬分類(lèi): j2se