[英]ArrayList if statement does not work when the list is null
我有一個微調器和一個將ArrayList與Parse.com進行比較的onItemSelected,然后運行一個Scan方法,該方法運行一個藍牙掃描,如果它找到了一個針對解析的mac地址,它將進行烘烤。
我想使該吐司自定義,但是當自定義arraylist == null時,它應該吐出標准吐司。 當我不檢查列表== null時,這可以正常工作。 如果我為烤面包輸入內容,它將運行良好並顯示自定義烤面包。 因此,敬酒決不能為空,否則什么也沒有定義。 我嘗試過customnotifications.clear,然后再添加一些內容,但在代碼中清除了幾個地方,但這是行不通的。
這是我的支票對帳單;
public void ScanBL() {
final ParseQuery<ParseUser> queryParseUser = ParseUser.getQuery();
queryParseUser.findInBackground(new FindCallback<ParseUser>() {
@Override
public void done(List<ParseUser> BTList, ParseException arg1) {
// TODO Auto-generated method stub
//Log.d("Parse", "we made it this far");
btadapter.cancelDiscovery();
btadapter.startDiscovery();
if (BTList != null && arg1 == null && list != null) {
for (ParseUser parseObject : BTList) {
if (parseObject.getString("BT_ID") != null) {
for (String string : list) {
for(String s : customnotification) {
Log.d("Custom", s);
}
if (string.equals(parseObject.getString("BT_ID")) && excluded.contains(parseObject.getString("BT_ID")) && customnotification == null) {
String user = parseObject.getString("username");
Log.d("For each", user);
Toast toast2 = Toast.makeText(context, "Wow, " + user + " is nearby! Test", Toast.LENGTH_SHORT);
toast2.show();
}
else if (string.equals(parseObject.getString("BT_ID")) && excluded.contains(parseObject.getString("BT_ID"))){
String user = parseObject.getString("username");
for (String string2 : customnotification) {
Toast toast = Toast.makeText(context, user + string2, Toast.LENGTH_SHORT);
toast.show();
}
//out.append("\nFound nearby device: " + user);
//Log.d("Bluetooth", "burde parse?");
}
}
}
}
}
else {
Log.d("Bluetooth", "Fejl i returnering af data: ");
}
}
});
}
在這里,我添加了customnotifications arraylist;
protected void changeNotifications() {
customnotification.clear();
String changemessage = changeMessage.getText().toString();
Toast.makeText(getApplicationContext(), "Notifikation changed to " + changemessage, Toast.LENGTH_LONG).show();
customnotification.add(changemessage);
for (String string : customnotification){
System.out.println(string);
}
}
我到底該如何正確檢查? 在這里住了一天:(
一位朋友向我指出ArrayLists不能為null,因此顯而易見的微小變化很簡單
if (string.equals(parseObject.getString("BT_ID")) && excluded.contains(parseObject.getString("BT_ID")) && customnotification == null)
變成
if (string.equals(parseObject.getString("BT_ID")) && excluded.contains(parseObject.getString("BT_ID")) && customnotification.isEmpty())
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.