![](/img/trans.png)
[英]Setting an integer value in textView shows null, How to solve this in android?
[英]how to declare null value to integer in android
我想知道我應該如何在 Android 中聲明一個帶有 Null 值的整數。 這是我的代碼:
btnload.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String getDate, getEpayee, getEcategory;
int getEamt;
getDate= "";
getEamt=""; //This Eamt variable is of integer type and
//this gives me a error.
getEpayee ="";
getEcategory="";
int
是 Java 中的原始類型; 因此你不能將它設置為null
(它不是一個對象)。
如果getEamt
是int
,則不能將其初始化為String
。 如果您真的想將整數設置為null
,則需要使用Integer
類。
如果您想對 int 類型使用某種“默認”或初始化值,您可以考慮從 1 開始計數並將 0 或負 int 解釋為默認值。
您可能沒有理解null
是什么。
在您發布的示例中,您使用空字符串""
。 因此,您可以初始化 String 實例以避免NullPointerException
。 如果您沒有初始化(在聲明時分配)任何值,則默認情況下對象類型的值為null
。
String message;
等於String message = null;
您通過String message = ""
所做的是設置對空字符串的引用。
null
僅適用於 Object 類型而不適用於原始類型。 如何每個原語都有一個允許空值的包裝類。
你可以這樣做
Integer value = null;
你不能這樣做
int value = null;
一般來說,您應該避免使用null
。 使用原語確保您永遠不會傳遞空值。
在您的代碼中,聲明是本地的,您應該在使用前使用有效值聲明它們,而不是創建一個初始化部分,然后創建一個使用塊。
btnload.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
conductPaymentTransaction()
}
private void conductPaymentTransaction()
{
Date date = getDate();
EPayee paye = getEPayee()
ECategory category = getECategory();
int ammount = getAmmount();
//...
}
注意:您不應以純字符串的形式存儲數據結構。
您可以將值設置為零。
int value = null;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.