IList Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Uma coleção ordenada, em que o usuário tem controle preciso sobre onde na lista cada elemento é inserido.
[Android.Runtime.Register("java/util/List", "", "Java.Util.IListInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface IList : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ICollection
[Android.Runtime.Register("java/util/List", "", "Java.Util.IListInvoker")]
[Java.Interop.JavaTypeParameters(new System.String[] { "E" })]
public interface IList : IDisposable, Java.Interop.IJavaPeerable, Java.Util.ISequencedCollection
[<Android.Runtime.Register("java/util/List", "", "Java.Util.IListInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type IList = interface
interface ICollection
interface IIterable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
[<Android.Runtime.Register("java/util/List", "", "Java.Util.IListInvoker")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "E" })>]
type IList = interface
interface ICollection
interface IIterable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
interface ISequencedCollection
- Derivado
- Atributos
- Implementações
Comentários
Uma coleção ordenada, em que o usuário tem controle preciso sobre onde na lista cada elemento é inserido. O usuário pode acessar elementos por seu índice inteiro (posição na lista) e pesquisar elementos na lista.
Ao contrário dos conjuntos, as listas normalmente permitem elementos duplicados. Mais formalmente, as listas normalmente permitem pares de elementos e1 e e2 tal que e1.equals(e2), e normalmente permitem vários elementos nulos se permitirem elementos nulos. Não é inconcebível que alguém deseje implementar uma lista que proíba duplicatas, lançando exceções de tempo de execução quando o usuário tenta inseri-las, mas esperamos que esse uso seja raro.
A List interface coloca estipulações adicionais, além daquelas Collection especificadas na interface, nos contratos dos iteratormétodos , add, remove, equals, e hashCode . Declarações para outros métodos herdados também são incluídas aqui por conveniência.
A List interface fornece quatro métodos para acesso posicional (indexado) aos elementos da lista. Listas (como arrays Java) são baseadas em zero. Observe que essas operações podem ser executadas em tempo proporcional ao valor do índice para algumas implementações (a LinkedList classe, por exemplo). Portanto, iterar sobre os elementos em uma lista normalmente é preferível à indexação por meio dela se o chamador não souber a implementação.
A List interface fornece um iterador especial, chamado , que permite a inserção e substituição de ListIteratorelementos e acesso bidirecional, além das operações normais que a Iterator interface fornece. Um método é fornecido para obter um iterador de lista que começa em uma posição especificada na lista.
A List interface fornece dois métodos para pesquisar um objeto especificado. Do ponto de vista do desempenho, esses métodos devem ser usados com cautela. Em muitas implementações, eles realizarão pesquisas lineares caras.
A List interface fornece dois métodos para inserir e remover com eficiência vários elementos em um ponto arbitrário da lista.
Nota: Embora seja permitido que as listas se contenham como elementos, recomenda-se extrema cautela: os equals métodos e hashCode não estão mais bem definidos em tal lista.
Algumas implementações de lista têm restrições sobre os elementos que podem conter. Por exemplo, algumas implementações proíbem elementos nulos e algumas têm restrições sobre os tipos de seus elementos. A tentativa de adicionar um elemento inelegível gera uma exceção não verificada, normalmente NullPointerException ou ClassCastException. A tentativa de consultar a presença de um elemento inelegível pode gerar uma exceção ou simplesmente retornar false; Algumas implementações exibirão o primeiro comportamento e outras exibirão o último. De forma mais geral, tentar uma operação em um elemento inelegível cuja conclusão não resultaria na inserção de um elemento inelegível na lista pode lançar uma exceção ou pode ser bem-sucedida, a critério da implementação. Essas exceções são marcadas como "opcionais" na especificação dessa interface.
<h2>"não modificável">Listas< não modificáveis/h2>
Os List#of(Object...) List.of métodos de fábrica estáticos e List#copyOf List.copyOf estáticos fornecem uma maneira conveniente de criar listas não modificáveis. As List instâncias criadas por esses métodos têm as seguintes características:
<ul li>Eles são <i>não modificáveis< / i>.<> Os elementos não podem ser adicionados, removidos ou substituídos. Chamar qualquer método mutador na Lista sempre fará com que UnsupportedOperationException seja lançado. No entanto, se os elementos contidos forem mutáveis, isso pode fazer com que o conteúdo da Lista pareça mudar.
<li>Eles não permitem null elementos. As tentativas de criá-los com null elementos resultam em NullPointerException.
<li>Eles são serializáveis se todos os elementos forem serializáveis.
<li>A ordem dos elementos na lista é a mesma que a ordem dos argumentos fornecidos ou dos elementos na matriz fornecida.
<li>As listas e seus #subList(int, int) subList modos de exibição implementam a RandomAccess interface.
<li>Eles são baseados em valores. Os programadores devem tratar as instâncias que são #equals(Object) iguais como intercambiáveis e não devem usá-las para sincronização, ou pode ocorrer um comportamento imprevisível. Por exemplo, em uma versão futura, a sincronização pode falhar. Os chamadores não devem fazer suposições sobre a identidade das instâncias retornadas. As fábricas são livres para criar novas instâncias ou reutilizar as existentes.
<li>Eles são serializados conforme especificado na página Formulário serializado.
</ul>
Adicionado em 1.2.
Documentação Java para java.util.List.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usadas de acordo com os termos descritos na Licença de Atribuição Creative Commons 2.5.
Propriedades
| Nome | Description |
|---|---|
| First |
A ser adicionado |
| Handle |
Obtém o valor JNI do objeto Android subjacente. (Herdado de IJavaObject) |
| IsEmpty |
Retorna se isso |
| JniIdentityHashCode |
Retorna o valor de |
| JniManagedPeerState |
Estado do peer gerenciado. (Herdado de IJavaPeerable) |
| JniPeerMembers |
Acesso de membros e suporte à invocação. (Herdado de IJavaPeerable) |
| Last |
A ser adicionado |
| PeerReference |
Retorna uma JniObjectReference das instâncias de objeto Java encapsuladas. (Herdado de IJavaPeerable) |
Métodos
| Nome | Description |
|---|---|
| Add(Int32, Object) |
Insere o elemento especificado na posição especificada nesta lista (operação opcional). |
| Add(Object) |
Anexa o elemento especificado ao final desta lista (operação opcional). |
| AddAll(ICollection) |
Acrescenta todos os elementos da coleção especificada ao final dessa lista, na ordem em que são retornados pelo iterador da coleção especificada (operação opcional). |
| AddAll(Int32, ICollection) |
Insere todos os elementos da coleção especificada nesta lista na posição especificada (operação opcional). |
| AddFirst(Object) |
Adiciona um elemento como o primeiro elemento dessa coleção (operação opcional). (Herdado de ISequencedCollection) |
| AddLast(Object) |
Adiciona um elemento como o último elemento dessa coleção (operação opcional). (Herdado de ISequencedCollection) |
| Clear() |
Remove todos os elementos desta lista (operação opcional). |
| Contains(Object) |
Retorna |
| ContainsAll(ICollection) |
Retorna |
| CopyOf(ICollection) |
Retorna uma lista não modificável contendo os elementos da coleção fornecida, em sua ordem de iteração. |
| Disposed() |
Chamado quando a instância tiver sido descartada. (Herdado de IJavaPeerable) |
| DisposeUnlessReferenced() |
Se não houver referências pendentes a esta instância, então chama |
| Equals(Object) |
Compara o objeto especificado com essa lista para igualdade. |
| Finalized() |
Chamado quando a instância tiver sido finalizada. (Herdado de IJavaPeerable) |
| ForEach(IConsumer) |
Executa a ação fornecida para cada elemento do |
| Get(Int32) |
Retorna o elemento na posição especificada nesta lista. |
| GetFirst() |
Obtém o primeiro elemento desta coleção. (Herdado de ISequencedCollection) |
| GetHashCode() |
Retorna o valor do código hash para esta lista. |
| GetLast() |
Obtém o último elemento desta coleção. (Herdado de ISequencedCollection) |
| IndexOf(Object) |
Retorna o índice da primeira ocorrência do elemento especificado nesta lista ou -1 se esta lista não contiver o elemento. |
| Iterator() |
Retorna um iterador sobre os elementos nesta lista na sequência adequada. |
| LastIndexOf(Object) |
Retorna o índice da última ocorrência do elemento especificado nesta lista ou -1 se esta lista não contiver o elemento. |
| ListIterator() |
Retorna um iterador de lista sobre os elementos nesta lista (na sequência adequada). |
| ListIterator(Int32) |
Retorna um iterador de lista sobre os elementos nesta lista (na sequência adequada), começando na posição especificada na lista. |
| Of() |
Retorna uma lista não modificável contendo zero elementos. |
| Of(Object, Object, Object, Object, Object, Object, Object, Object, Object, Object) |
Retorna uma lista não modificável contendo dez elementos. |
| Of(Object, Object, Object, Object, Object, Object, Object, Object, Object) |
Retorna uma lista não modificável contendo nove elementos. |
| Of(Object, Object, Object, Object, Object, Object, Object, Object) |
Retorna uma lista não modificável contendo oito elementos. |
| Of(Object, Object, Object, Object, Object, Object, Object) |
Retorna uma lista não modificável contendo sete elementos. |
| Of(Object, Object, Object, Object, Object, Object) |
Retorna uma lista não modificável contendo seis elementos. |
| Of(Object, Object, Object, Object, Object) |
Retorna uma lista não modificável contendo cinco elementos. |
| Of(Object, Object, Object, Object) |
Retorna uma lista não modificável contendo quatro elementos. |
| Of(Object, Object, Object) |
Retorna uma lista não modificável contendo três elementos. |
| Of(Object, Object) |
Retorna uma lista não modificável contendo dois elementos. |
| Of(Object) |
Retorna uma lista não modificável contendo um elemento. |
| Of(Object[]) |
Retorna uma lista não modificável contendo um número arbitrário de elementos. |
| Remove(Int32) |
Remove o elemento na posição especificada nesta lista (operação opcional). |
| Remove(Object) |
Remove a primeira ocorrência do elemento especificado desta lista, se ele estiver presente (operação opcional). |
| RemoveAll(ICollection) |
Remove dessa lista todos os seus elementos contidos na coleção especificada (operação opcional). |
| RemoveFirst() |
Remove e retorna o primeiro elemento dessa coleção (operação opcional). (Herdado de ISequencedCollection) |
| RemoveIf(IPredicate) |
Remove todos os elementos dessa coleção que satisfazem o predicado fornecido. (Herdado de ICollection) |
| RemoveLast() |
Remove e retorna o último elemento dessa coleção (operação opcional). (Herdado de ISequencedCollection) |
| ReplaceAll(IUnaryOperator) |
Substitui cada elemento dessa lista pelo resultado da aplicação do operador a esse elemento. |
| RetainAll(ICollection) |
Retém apenas os elementos nesta lista que estão contidos na coleção especificada (operação opcional). |
| Reversed() |
Retorna uma exibição ordenada inversa dessa coleção. (Herdado de ISequencedCollection) |
| Set(Int32, Object) |
Substitui o elemento na posição especificada nesta lista pelo elemento especificado (operação opcional). |
| SetJniIdentityHashCode(Int32) |
Defina o valor retornado por |
| SetJniManagedPeerState(JniManagedPeerStates) |
Uma coleção ordenada, em que o usuário tem controle preciso sobre onde na lista cada elemento é inserido. (Herdado de IJavaPeerable) |
| SetPeerReference(JniObjectReference) |
Defina o valor retornado por |
| Size() |
Retorna o número de elementos nessa lista. |
| Sort(IComparator) |
Classifica essa lista de acordo com a ordem induzida pelo . |
| Spliterator() |
Cria um |
| SubList(Int32, Int32) |
Retorna uma exibição da parte dessa lista entre o especificado |
| ToArray() |
Retorna uma matriz contendo todos os elementos desta lista na sequência adequada (do primeiro ao último elemento). |
| ToArray(IIntFunction) |
Retorna uma matriz que contém todos os elementos dessa coleção, usando a função fornecida |
| ToArray(Object[]) |
Retorna uma matriz contendo todos os elementos desta lista na sequência adequada (do primeiro ao último elemento); O tipo de tempo de execução da matriz retornada é o da matriz especificada. |
| UnregisterFromRuntime() |
Cancele o registro dessa instância para que o tempo de execução não a retorne de invocações futuras Java.Interop.JniRuntime+JniValueManager.PeekValue . (Herdado de IJavaPeerable) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| IIterable.Spliterator() |
Cria um |
| ISequencedCollection.AddFirst(Object) |
A ser adicionado |
| ISequencedCollection.AddLast(Object) |
A ser adicionado |
| ISequencedCollection.RemoveFirst() |
A ser adicionado |
| ISequencedCollection.RemoveLast() |
A ser adicionado |
| ISequencedCollection.Reversed() |
Uma coleção ordenada, em que o usuário tem controle preciso sobre onde na lista cada elemento é inserido. |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtém o nome JNI do tipo da instância |
| JavaAs<TResult>(IJavaPeerable) |
Tente coagir a digitar |
| JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada pelo tempo de execução do Android. |
| JavaCast<TResult>(IJavaObject) |
Uma coleção ordenada, em que o usuário tem controle preciso sobre onde na lista cada elemento é inserido. |
| ToEnumerable(IIterable) |
Uma coleção ordenada, em que o usuário tem controle preciso sobre onde na lista cada elemento é inserido. |
| ToEnumerable<T>(IIterable) |
Uma coleção ordenada, em que o usuário tem controle preciso sobre onde na lista cada elemento é inserido. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Tente coagir a digitar |