How to add new elements to an array?

后端 未结 18 1691
误落风尘
误落风尘 2020-11-22 04:55

I have the following code:

String[] where;
where.append(ContactsContract.Contacts.HAS_PHONE_NUMBER + \"=1\");
where.append(ContactsContract.Contacts.IN_VISIB         


        
18条回答
  •  清酒与你
    2020-11-22 05:17

    The size of an array can't be modified. If you want a bigger array you have to instantiate a new one.

    A better solution would be to use an ArrayList which can grow as you need it. The method ArrayList.toArray( T[] a ) gives you back your array if you need it in this form.

    List where = new ArrayList();
    where.add( ContactsContract.Contacts.HAS_PHONE_NUMBER+"=1" );
    where.add( ContactsContract.Contacts.IN_VISIBLE_GROUP+"=1" );
    

    If you need to convert it to a simple array...

    String[] simpleArray = new String[ where.size() ];
    where.toArray( simpleArray );
    

    But most things you do with an array you can do with this ArrayList, too:

    // iterate over the array
    for( String oneItem : where ) {
        ...
    }
    
    // get specific items
    where.get( 1 );
    

提交回复
热议问题