如何在android中将null值声明为整数

时间:2014-05-19 15:05:42

标签: java integer

我想知道如何在Android中声明一个Null Value的Integer。 这是我的代码:

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="";

4 个答案:

答案 0 :(得分:3)

intJava中的原始类型;因此,您无法将其设置为null(它不是Object)。

如果getEamtint,则无法将其初始化为String。如果您确实要将整数设置为null,则需要使用Integer类。

答案 1 :(得分:0)

如果你想使用某种"默认"或者使用int类型的初始化值,您可以考虑开始计数为1并将0或负int解释为默认值。

答案 2 :(得分:0)

您可能错过了null的内容。

在您发布的示例中,您使用空字符串 ""。因此,您可以初始化String实例以避免NullPointerException。如果您没有初始化(在声明处分配)任何值,则默认情况下对象类型具有null值。

String message;等于String message = null;

String message = ""您正在做的是设置对空字符串的引用。


null仅适用于非primitive ones的对象类型。每个原语如何都有一个允许null的包装类。

你可以这样做

Integer value = null;

不能这样做

int value = null;

一般来说,你应该避免使用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();

 //...

}

注意:您不应以纯字符串的形式存储数据结构。

答案 3 :(得分:0)

您可以将值设置为零..

int value = null;