Android:If/Else语句导致应用程序崩溃

Android:If/Else语句导致应用程序崩溃,android,null,if-statement,Android,Null,If Statement,我试图通过使用if/Else来判断android int是否为null public void onClick(View v) { EditText min = (EditText) findViewById(R.id.EditText01); EditText max = (EditText) findViewById(R.id.maxnum); EditText res = (EditText) findViewB

我试图通过使用if/Else来判断android int是否为null

public void onClick(View v) {



            EditText min = (EditText) findViewById(R.id.EditText01);
            EditText max = (EditText) findViewById(R.id.maxnum);
            EditText res = (EditText) findViewById(R.id.res);



            int myMin = Integer.parseInt(min.getText().toString());
            int myMax = Integer.parseInt(max.getText().toString());

            String minString = String.valueOf(myMin);
            String maxString = String.valueOf(myMax);

            int f = (int) ((Math.random()*(myMax-myMin+1))+myMin);

            if (minString.equals(""))
            {
                // Do Nothing
            }

            if (maxString.equals(""))
            {
                // Do Nothing
            }



                res.setText(String.valueOf(f));
没有任何错误,但是当我运行应用程序时,当我按下按钮时,它会崩溃

我还尝试使用null而不是“”:

我有一次撞车


请帮帮我

int变量不能为null

       do if (maxString == null ) 
    {
        // do something 
      }
如果要将null转换为int,则由转换器决定是设置0、抛出异常还是设置另一个值(如Integer.MIN_值)

所以,如果再次将int转换为string,则无法获得null值

public boolean equals (Object object)
将指定的对象与此字符串进行比较,如果它们相等,则返回true。对象必须是具有相同顺序的相同字符的字符串实例

因此,如果要检查其是否为空,请在对象上使用
=
运算符

if (maxString == null )
使用

check=input.getText().toString();
试一试{
如果(!check.equals(“null”)){
int max=Integer.parseInt(input.getText().toString());
int=1;
int=1;
int nextNumber=0;
整数计数=0;
字符串纤维结果=”;

对于(int i=0;i logcat说什么?请发布您的logcat输出。可能是Integer.parseInt(),如果您试图解析非数字,它会崩溃。“android int为null”.int不能为null如何发布logcat输出?然后检查您的整数值和/或editText视图。您是否使用正确的editText?另外,您正在用onClick()方法编写代码。因此通常我们比较:if(v==btn1){//my code here}给我错误日志。我使用的是android:inputType=“number”在EditText中写入的任何内容都将为您提供字符串。“number”属性用于键盘类型。请复制粘贴错误日志。只需按control键,选择该行并复制错误日志,然后粘贴到此处。我得到了myMin=Integer.parseInt(min.getText().toString())周围的错误;这里check是一个字符串,它被用来检查空值,请帮助我给出一个空值的代码!我正在尝试用switch语句做一个简单的Fibonacci代码,我想检查给定的edittext输入字符串值是否为空,如果不是空值,那么if语句代码应该执行其他语句,if statement代码工作正常,但如果给定的edittext为空或null或“”,则它不会执行else语句,如果不放入try块,则会崩溃。如何使其工作?
if (maxString == null )
        int myMin = 0;
        int myMax = 0;
        if(min.getText().toString()!="")
        myMin = Integer.parseInt(min.getText().toString());
        if(max.getText().toString()!="")
        myMax = Integer.parseInt(max.getText().toString());

        String minString = String.valueOf(myMin);
        String maxString = String.valueOf(myMax);

        int f = (int) ((Math.random()*(myMax-myMin+1))+myMin);

        if (minString.equals(""))
        {
            // Do Nothing
        }

        if (maxString.equals(""))
        {
            // Do Nothing
        }
  check = input.getText().toString();
 try {
    if (!check.equals("null")) {
        int max = Integer.parseInt(input.getText().toString());
        int constant1 = 1;
        int constant2 = 1;
        int nextNumber = 0;
        int count = 0;
        String fibResult = "";
        for (int i = 0; i <= max; i++) {
            fibResult += "F" + count + "=" + nextNumber + "\n";
            constant1 = constant2;
            constant2 = nextNumber;
            nextNumber = constant1 + constant2;
            count++;
        }
        dspResults.setText("\n" + fibResult);
    } else {
        dspResults.setVisibility(View.VISIBLE);
        dspResults.setText("Invalid");
        dspResults.setText(Gravity.CENTER);
        dspResults.setTextColor(Color.DKGRAY);
    }
} catch (IllegalArgumentException e) {
    e.printStackTrace();
}
public void onClick(View v) {



            EditText min = (EditText) findViewById(R.id.EditText01);
            EditText max = (EditText) findViewById(R.id.maxnum);
            EditText res = (EditText) findViewById(R.id.res);



            int myMin = Integer.parseInt(min.getText().toString());
            int myMax = Integer.parseInt(max.getText().toString());

            String minString = String.valueOf(myMin);
            String maxString = String.valueOf(myMax);

            int f = (int) ((Math.random()*(myMax-myMin+1))+myMin);
           {

            if (minString.equals(""))
            {
                // Do Nothing
                 res.setText(String.valueOf(f));
                  return false;

            }

            else if (maxString.equals(""))
            {
                // Do Nothing
                res.setText(String.valueOf(f));
                return false;

            }

             else  
             res.setText(String.valueOf(f));

           return true ; 
       }