作者lo33 (lo33)
看板AndroidDev
标题[问题] null值无法进入if 判断式
时间Sat Oct 8 01:59:04 2011
目前在写一个程式
是先抓到mysql的再转换成json字串
但我想写个判断式若 值result是null的话 会出现警语
程式是这样:
try {
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(link);
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
} catch (Exception e) {
Log.e("1", "Error in http connection " + e.toString());
}
// convert response to string
try {
BufferedReader reader = new BufferedReader(new InputStreamReade
is, "UTF-8"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
result = sb.toString();
} catch (Exception e) {
Log.e("2", "Error converting result " + e.toString());
}
// parse json data
// Log.e("result", result);
if (result==null) {
Toast.makeText(ScheduleActivity.this, R.string.noresult,
Toast.LENGTH_LONG).show();
}
else {
///////////////////////
}
我重Log.e看可以看到我所抓的result 的值是null
但是程式都会进入else里面而不是在if那边出现警语
我也试过
if (result.equals(null)) {
}
的写法还是不行@@
还请高手指点!!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.119.137.72
1F:推 LPH66:试试 "null".equals(result) 这样? 10/08 07:54
2F:→ LPH66:在猜会不会 result 的值是一个内容为 null 四个字的字串... 10/08 07:54
3F:→ lo33:还是一样耶 我也试过就是字串"null" 了 QQ 10/08 11:00
4F:→ blooker:你的result在哪里宣告阿 10/08 11:26
5F:→ lo33:onCreate那里有宣告 我只是贴取值的程式而已 10/08 11:33
6F:推 tomap41017:这个问题我也遇过,不知怎麽解决的 10/08 11:36
7F:→ tomap41017:你试试看拿到String response = EntityUtils.toString( 10/08 11:36
8F:→ tomap41017:HttpResponse)试试看,不要拿inputStream硬读 10/08 11:37
9F:推 yes0324:我也是卡在这里Q_Q 10/08 15:53
10F:→ lo33:tom大的方法也试过了 还是不行@@ 10/08 17:45
11F:→ bleed1979:可以利用result的长度来判断吗? 10/08 18:22
12F:推 nvidia:那就不是null拉 10/08 19:13
13F:→ nvidia:你用eclipse的debugger看看那是什麽 10/08 19:14
14F:→ nvidia:就土法炼钢去step into看为什麽没进入if 10/08 19:16
15F:→ aleelyle:直接log出来不就知道是什麽了 10/08 20:10
16F:→ lo33:友啊 我有log出来 是null没错..QQ 10/08 20:14
17F:→ LCamel:你可以在 else 里面印 result.getClass() 看看 10/08 20:25
18F:推 tomap41017:我在猜楼上这样会出现NPE? 10/08 23:43
19F:→ nvidia:如果是null pointer exception那怎麽还会进入ELSE 10/09 00:21
20F:→ tomap41017:原PO可以测看看吗XD?因为我之前也遇过同样BUG 10/10 14:18
21F:→ tomap41017:@nv : 有时候遇到一些怪情况你也不知道怎麽解释= = 10/10 14:19
22F:推 nvidia:我没遇到那种情况阿 XD 10/11 10:32
23F:→ nvidia:我比较好奇的是为什麽会这样 10/11 10:33
24F:→ qrtt1:中间有 exception 又初始化为 "null" 就有可能XD 10/11 10:44
25F:推 nvidia:XD 10/11 11:09