Java 如何在android中检查if循环中的数组?

Java 如何在android中检查if循环中的数组?,java,android,android-layout,android-intent,Java,Android,Android Layout,Android Intent,我对数组中的if循环有问题。我正在使用Ginger bread源代码并修改电子邮件应用程序,但数组中的if循环有问题。显示我的代码 String[] arrayUri; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);

我对数组中的if循环有问题。我正在使用Ginger bread源代码并修改电子邮件应用程序,但数组中的if循环有问题。显示我的代码

String[] arrayUri;
    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
    setContentView(R.layout.message_compose);
    //getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.list_title);
    Bundle b=this.getIntent().getExtras();
    arrayUri=b.getStringArray("uriList");
    //data1=getIntent().getExtras().getString("hello");
    mController = Controller.getInstance(getApplication());
    mListener = new Listener();
    initViews();
    if(arrayUri != null) //Not Working
    {
      makeToast("Hello");
    }
我用了这个

    if(!arrayUri.equals("")) //Not Working
    {
      makeToast("Hello");
    }


    if(arrayUri.length >0) //Not Working
    {
      makeToast("Hello");
    }

    if(arrayUri.length != 0) //Not Working
    {
      makeToast("Hello");
    }
在电子邮件应用程序中,所有条件都不起作用。在if中比较数组的任何其他方法。

我还没有测试过这一点(我80%确定它会工作)

但这会让你找到答案

if (arrayUri.getClass().isArray()) {
  // I'm an array
} else {
  // I'm not an array
}
使用


将数组转换为arrayList。这可能对你有帮助。你可以试试这个

ArrayList<String> lst;

     for(int i = 0; i < arrayUri.length; i++ )
     {
         lst.add(arrayUri[i]);
     }

if(lst.isEmpty())
     {

     }
arraylistlst;
for(int i=0;i

希望这能帮助您……

如果arrayUri=b.getStringArray(“uriList”);返回null。“不工作”不是对所看到内容的良好描述。与您预期的情况相比发生了什么?
arrayUri
是一个字符串数组,所以
!arrayUri.equals(“”
在与字符串进行比较时总是返回false。它应该会起作用,最好您发布错误或异常以清楚地理解问题。这是Ginger bread MailComposeActivity.java。我想在联系人中使用此活动。它在联系人应用程序中完美执行。但它在电子邮件应用程序中无法正常工作。这是生成错误空指针异常
ArrayList<String> lst;

     for(int i = 0; i < arrayUri.length; i++ )
     {
         lst.add(arrayUri[i]);
     }

if(lst.isEmpty())
     {

     }