检查值是否为空,并将其赋值为0。

huangapple go评论62阅读模式
英文:

Check if the value is null and assign it 0

问题

我正在为移动设备制作一个计算器应用。如果您没有输入任何数字和天数进行计算,应用会崩溃。我认为这是因为该值为空,无法进行操作。

我该如何检查它是否为空,如果是空的,将其赋值为0。

editTextnum1= findViewById(R.id.editTextnum1);

String num1= editTextnum1.getText().toString();

int Inum1= num1.isEmpty() ? 0 : Integer.parseInt(num1);

使用变量 Inum1 进行计算器操作。对于如何修复此问题,有什么想法或帮助吗?
谢谢

英文:

I am making an app for the mobile that is a calculator.If you do not put any number and days to calculate it will crash.I think it is because the value is null, and it cannot be operated on.

How can I check if it is null and if so, assign it the value 0.

editTextnum1= findViewById(R.id.editTextnum1);

String num1= editTextnum1.getText().toString();

int Inum1= Integer.parseInt(num1);

With the variable Inum1 I do the operation in calculator.
Any ideas or help on how to fix it?
Thanks

答案1

得分: 3

可以使用三元运算符来检查条件并设置值,如下所示:

String num1 = editTextnum1.getText().toString();
num1 = num1.isEmpty() ? "0" : num1;
英文:

You can use ternary operator to check a condition and set the value like 0

String num1 = editTextnum1.getText().toString();
num1 = num1.isEmpty() ? "0" : num1;

答案2

得分: 0

你应该像下面这样设计你的代码块,以避免空指针异常:

editTextnum1 = findViewById(R.id.editTextnum1);
if (editTextnum1 == null) {
    log.info("未找到 id 为:" + R.id.editTextnum1 + " 的视图");
    // 在此处执行某些操作或直接返回
} else {
    log.info("已找到 id 为:" + R.id.editTextnum1 + " 的视图");
    String num1 = editTextnum1.getText().toString();
    if (num1 == null) {
        // 在此处执行某些操作或直接返回
    } else {
        int Inum1 = Integer.parseInt(num1);
        // 执行某些操作.....
    }
}
英文:

You should be designing your code block like below to avoid null exceptions :

editTextnum1= findViewById(R.id.editTextnum1);
if(editTextnum1 == null){
    log.info("View not found for id : " + R.id.editTextnum1);
    // do something or return from here
} else {
    log.info("View found for id : " + R.id.editTextnum1);
    String num1= editTextnum1.getText().toString();
    if (null == num1) {
        // do something or return from here
    } else {
        int Inum1= Integer.parseInt(num1);
        // do something.....
    }
}

答案3

得分: 0

你可以始终像这样检查 num1 的值。

if (num1 == null || num1.isEmpty()) {
    // 没有输入;做些什么!
} else {
    int Inum1 = Integer.parseInt(num1);
    // 开心地完成你的工作。
}
英文:

You can always check the value of num1 like this.

if (num1 == null || or num1.isEmpty()) {
    // no input; do something!
} else {
    int Inum1 = Integer.parseInt(num1);
    // happily do your job.
}

答案4

得分: 0

检查 editTextnum1 是否为null或为空

int Inum1 = editTextnum1.isEmpty() || editTextnum1 == null ? 0 : Integer.parseInt(num1);
英文:

Check if editTextnum1 is null or empty

int Inum1 = editTextnum1.isEmpty() || editTextnum1 == null ? 0 : Integer.parseInt(num1);

huangapple
  • 本文由 发表于 2020年10月4日 18:28:57
  • 转载请务必保留本文链接:https://go.coder-hub.com/64193515.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定