Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在android studio中检索if/else子句的字符串_Java_Android_String_If Statement - Fatal编程技术网

Java 在android studio中检索if/else子句的字符串

Java 在android studio中检索if/else子句的字符串,java,android,string,if-statement,Java,Android,String,If Statement,我正在尝试使用二维码扫描仪,它应该根据扫描的码重定向到不同的活动,但我很难从结果中获得正确形式的字符串 @Override public void handleResult(Result result) { Log.w("handleResult", result.getText()); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Scan results

我正在尝试使用二维码扫描仪,它应该根据扫描的码重定向到不同的活动,但我很难从结果中获得正确形式的字符串

  @Override
public void handleResult(Result result) {
    Log.w("handleResult", result.getText());
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Scan results");
    builder.setMessage(result.getText());
    AlertDialog alertDialog = builder.create();
    alertDialog.show();

    String id_helper = result.getText().toString();

    if (id_helper == "1") {
       startActivity(new Intent(this, Sample1.class));
    } else if (id_helper == "2") {
        startActivity(new Intent(this, Sample2.class));
    } else {
        startActivity(new Intent(this, Sample3.class));
    }

您以错误的方式比较字符串,在Java中,您必须使用equals方法比较字符串


始终将已知变量as放在条件的左侧,以避免出现NullPoinerException。

您以错误的方式比较字符串,在Java中,您必须使用equals方法比较字符串


始终将已知变量as放在条件的左侧,以避免出现NullPoinerException。

将if语句更改为如下:

if ("1".equals(id_helper)) {
   startActivity(new Intent(this, Sample1.class));
} else if ("2".equals(id_helper)) {
    startActivity(new Intent(this, Sample2.class));
} else {
    startActivity(new Intent(this, Sample3.class));
}

将if语句更改为如下所示:

if ("1".equals(id_helper)) {
   startActivity(new Intent(this, Sample1.class));
} else if ("2".equals(id_helper)) {
    startActivity(new Intent(this, Sample2.class));
} else {
    startActivity(new Intent(this, Sample3.class));
}

我最好的猜测是您正在执行无效的字符串检查

if (id_helper == "1") {
       startActivity(new Intent(this, Sample1.class));
    } else if (id_helper == "2") {
        startActivity(new Intent(this, Sample2.class));
    } else {
        startActivity(new Intent(this, Sample3.class));
    }

您的代码使用==而不是myString.contentEquals2或myString.equals2或myString.equalsIgnoreCase2

我最好的猜测是您正在执行无效的字符串检查

if (id_helper == "1") {
       startActivity(new Intent(this, Sample1.class));
    } else if (id_helper == "2") {
        startActivity(new Intent(this, Sample2.class));
    } else {
        startActivity(new Intent(this, Sample3.class));
    }

您的代码使用==而不是myString.contentEquals2或myString.equals2或myString.equalsIgnoreCase2

如果我很好地理解了您的要求,那么您希望将QR代码传递给其他类Sample1、Sample2和Sample3?您是否获得了正确的id\u helper值?我希望根据QR代码重定向到特定类,我不需要将二维码本身传递给activities@Alpha这可能是一个问题,我对android/intellij相当陌生,不知道如何检查,我的qr码生成了字符串1,但活动Sample3还是启动了,因此可能存在问题,请记住java无法通过==或>等检查非基本类型。如果我很好地理解了您的要求,那么您希望将qr码传递给其他类Sample1,Sample2和Sample3?您是否获得了正确的id_helper值?我希望根据二维码的内容重定向到某个类,我不需要将二维码本身传递给activities@Alpha这可能是一个问题,我对android/intellij相当陌生,不知道如何检查,我用qr码生成了字符串1,但活动Sample3还是启动了,因此可能存在问题,请记住java无法通过==或>等检查非基本类型。ohh好,太少太晚了:Dohh好,太少太晚了:D