1 java null if-statement is-empty
我有相关的一个简单的问题==null和=="",我想每个人都知道这个问题.
这是一个例子:
@SuppressWarnings("unchecked")
public void reorderingCriteia() {
ListModelList<ReorderData> headerList = new ListModelList<ReorderData>();
List<String> headerId = new ArrayList<String>();
String userReorderSelection = Services.userPreferenceService().getUserPreference().getUserOption("PROCESS_CHECKLIST_COLUMN_REORDER");
if (userReorderSelection == null || userReorderSelection == "") {
int i = 0;
for (ReorderData rd : availableReorderList) {
headerList.add(rd);
headerId.add("" + i);
i++;
}
folderProcessModel.setHeaderList(headerList);
folderProcessModel.setHeaderId(headerId);
} else {
headerList = ReorderDialogViewModelNew.jsonStringToList("FOLDER_PERMIT_LIST_COLUMN_REORDER", userReorderSelection, false);
headerId = compHelper.intializeSequnce(headerList, folderProcessModel.getAvailableHeaders());
folderProcessModel.setHeaderList(headerList);
folderProcessModel.setHeaderId(headerId);
}
}
Run Code Online (Sandbox Code Playgroud)
我有一些问题:
这段代码使用if (userReorderSelection == null || userReorderSelection == "").我能用这个条件if (userReorderSelection == null)吗?
两个有什么区别?
== null检查null参考.
== ""检查空白/空字符串引用.在这里你可以str.equals("")用来检查字符串是否为空/空白.==用于对象引用检查.或者您可以使用它String.isEmpty()来检查相同.
此外,如果你只使用if (userReorderSelection == null),那么你只会检查是否userReorderSelection是null,并且它不会确定字符串是否为空.
大家回答说:
使用来自apache commons的StringUtils来消除两个条件.StringUtils.isEmpty(yourVariable)这个条件将处理这两种情况.
| 归档时间: |
|
| 查看次数: |
137 次 |
| 最近记录: |