![](/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.