簡體   English   中英

使用java.lang.Integer屬性將空字符串傳遞給.tag會導致0(不為null)

[英]Passing empty string to .tag with a java.lang.Integer attribute results in 0 (not null)

我有一個.tag文件,其屬性類型為java.lang.Integer,如下所示:

<%@ attribute name="userId" required="true" type="java.lang.Integer"%>

當向此標記傳遞空字符串時,該屬性最終以0而不是null的值結束(正如我希望使用java.lang.Integer和all一樣)。

我想念什么嗎? 在這種情況下,有什么方法可以強制屬性值為

我的猜測是,如果類型轉換失敗(即,傳入的值將不會解析為Integer,則Integer.parseInt會引發NumberFormatException),則該屬性將初始化為0。這種區分情況是有意義的和一個空對象引用。

在.tag文件中改用String屬性怎么樣? 然后,您可以測試其值(例如null或empty等),並根據需要轉換為Integer。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM