Table des matières
1. Table linéaire
Définition
Caractéristiques
2. Table de séquence
Implémentation
Imprimer le tableau
Ajouter de nouveaux éléments
Déterminez s'il contient un certain élément
Recherche d'éléments
Obtenez l'élément en position pos
Modifier la valeur de la position pos
Opération de suppression
Obtenir la longueur de la table de séquence
Effacer la table de séquence
3, ArrayList
Introduction :
boolean add(E e)
Maison Java javaDidacticiel Comment définir et implémenter ArrayList et la liste de séquences en Java

Comment définir et implémenter ArrayList et la liste de séquences en Java

May 18, 2023 pm 02:04 PM
java arraylist

    1. Table linéaire

    Définition

    La table linéaire est la structure de données la plus basique, la plus simple et la plus couramment utilisée. Une séquence finie, qui contient n éléments de données présentant les mêmes caractéristiques, est appelée liste linéaire et constitue un type de structure de données.

    Listes linéaires courantes : listes séquentielles, listes chaînées, piles, files d'attente...

    Les listes linéaires sont des structures logiquement linéaires, c'est-à-dire qu'elles constituent une ligne droite continue. La forme de stockage physique des tableaux linéaires est généralement une structure de tableau ou de liste chaînée, mais elle n'est pas nécessairement continue.

    Caractéristiques

    • Il ne doit y avoir qu'un seul "premier élément" dans l'ensemble.

    • Il ne doit y avoir qu'un seul "dernier élément" dans l'ensemble.

    • À l'exception du dernier élément, tous les éléments ont un successeur unique (conséquent).

    • À l'exception du premier élément, tous les éléments ont un précurseur (antécédent) unique.

    2. Table de séquence

    Définition

    Une structure linéaire généralement stockée sous la forme d'un tableau est appelée table de séquence, qui stocke des éléments de données en séquence dans une unité de stockage avec des adresses physiques continues. Terminez l'ajout, la suppression, la vérification et la modification des données sur la baie.

    Implémentation

    Nous devons d'abord créer un tableau pour stocker les données.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Remarque : Parce que j'ai d'abord créé le tableau d'entiers pour plus de commodité, afin de mieux s'adapter aux différents types, vous pouvez créer un tableau générique, que je n'écrirai pas ici.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    L'étape suivante consiste à effectuer diverses opérations sur la table de séquence. Par exemple : CURD de base, impression de la table de séquence, obtention de la longueur de la table de séquence, effacement de la table de séquence, etc.

    Imprimer le tableau

    Parce qu'il s'agit d'un tableau, il suffit donc de parcourir le tableau et de l'imprimer directement

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Ajouter de nouveaux éléments

    Lors de l'ajout d'éléments, il est nécessaire de déterminer si le tableau est plein, nous devons donc faites un jugement. Si l'espace du tableau est plein et doit être étendu. De plus, nous devons également déterminer si cette position de pos est légale.

    Comment juger si l'espace est plein

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Ici, nous simplifions le code comme suit :

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Si vous souhaitez augmenter la capacité, une fois l'expansion terminée, car la table de séquence est une structure continue, ajoutez des éléments à la position pos, puis les éléments après la position pos seront reculés un par un. Ce n'est qu'ainsi que de nouveaux éléments pourront être ajoutés.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Remarque : Après l'expansion, nous devons modifier la taille de CAPACITY et usedSize.

    Déterminez s'il contient un certain élément

    Ici, nous devons déterminer si le tableau est vide à ce moment-là.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Après cela, nous parcourons toujours directement le tableau.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Recherche d'éléments

    nécessite également une opération nulle ici.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Obtenez l'élément en position pos

    Il peut y avoir des situations où le tableau est vide et la position est illégale, un jugement est donc nécessaire.

    Je lance des exceptions manuellement ici, je n'ai rien écrit d'autre.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Modifier la valeur de la position pos

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Opération de suppression

    Pour supprimer un élément à une certaine position, l'élément derrière lui peut directement l'écraser pour obtenir la suppression.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Obtenir la longueur de la table de séquence

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Effacer la table de séquence

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Les opérations suivantes sont relativement simples et ne seront pas décrites en détail.

    3, ArrayList

    Introduction :

    Dans le framework de collection, ArrayList est une classe ordinaire qui implémente l'interface List Le schéma de framework spécifique est le suivant : # ° interface. Indique qu'ArrayList prend en charge l'accès aléatoire.

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    ArrayList implémente l'interface Cloneable, indiquant qu'ArrayList peut être cloné.

    ArrayList implémente l'interface Serialisable, indiquant qu'ArrayList prend en charge la sérialisation.
    1. Contrairement à Vector, ArrayList n'est pas thread-safe et peut être utilisé dans des threads uniques. Dans plusieurs threads, vous pouvez choisir Vector ou CopyOnWriteArrayList.
    2. La couche inférieure d'ArrayList est un espace continu et peut être développée dynamiquement. Il s'agit d'une liste de séquences de type dynamique.
    3. Utiliser
    4.  public static void main(String[] args) {
              // ArrayList创建,推荐写法
              // 构造一个空的列表
              List<Integer> list1 = new ArrayList<>();
       
              // 构造一个具有10个容量的列表
              List<Integer> list2 = new ArrayList<>(10);
              list2.add(1);
              list2.add(2);
              list2.add(3);
       
              // list2.add("hello"); // 编译失败,List<Integer>已经限定了,list2中只能存储整形元素
              // list3构造好之后,与list中的元素一致
              ArrayList<Integer> list3 = new ArrayList<>(list2);
       
              // 避免省略类型,否则:任意类型的元素都可以存放,使用时将是一场灾难
              List list4 = new ArrayList();
              list4.add("111");
              list4.add(100);
          }
      Copier après la connexion
    5. Quelques méthodes courantes

    6. method

    7. Explication

    boolean add(E e)

    tail insert e# 🎜🎜#Supprimez l'élément de position d'index et retournez boolean remove(Object o)Supprimez le premier rencontré o E get(int index)Obtenir l'élément de position de l'index d'indice# 🎜 🎜#E set(int index, E element)void clear()# 🎜🎜 #Effacer la table de séquenceboolean contain(Object o)Jugez si o est dans la table linéaire#🎜🎜 #Renvoyer l'indice où se trouve le premier o #🎜🎜 #int lastIndexOf(Object o)Renvoyer l'indice du dernier o List< )Intercepter une partie de la listeLoop traversal # 🎜🎜#iterator
    void add(int index, E element)Insérer e dans la position de l'index
    boolean addAll(Collection< ;? étend E> c)Insérez la queue des éléments de l'ensemble c dans l'ensemble
    E delete(int index)# 🎜🎜#
    Définissez l'élément de position de l'index d'indice sur element
    int indexOf(Object o)
    ArrayList traversal
    foreach traversal
            System.out.println("======迭代器1=========");
     
            ElementObservableListDecorator<Object> list;
            Iterator<String> it =  list.iterator();
            while (it.hasNext()) {
                System.out.println(it.next());
            }
            System.out.println("======迭代器2=========");
            ListIterator<String> it2 =  list.listIterator();
            while (it2.hasNext()) {
                System.out.println(it2.next());
            }
    Copier après la connexion
    # 🎜 🎜#La différence entre une table de séquence et un tableau : Il est dit ci-dessus que la couche inférieure d'une table de séquence peut être comprise comme un tableau, mais elle est plus avancée qu'un tableau.

    Le tableau de séquence peut être développé par lui-même

    Le tableau de séquence fait une distinction stricte entre la capacité du tableau et le nombre d'éléments.

    Comment définir et implémenter ArrayList et la liste de séquences en JavaDonc, un tableau est en fait une liste de séquences incomplète.

    Notes dans le tableau de séquence :

    Comment définir et implémenter ArrayList et la liste de séquences en Java

    Il faut distinguer deux concepts dans le tableau de séquence : Capacité (capacité) et nombre d'éléments (taille).

    La capacité peut être comprise comme la taille (longueur) du tableau, et le nombre d'éléments est le nombre d'éléments valides enregistrés en taille.

    Dans la table de séquence, le stockage des données doit être continu et il ne peut pas y avoir d'"espaces" entre les éléments lorsque des opérations telles que l'insertion et la suppression sont effectuées. l'opération Une fois terminée, la continuité de la table de séquence doit également être assurée.

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Déclaration de ce site Web
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

    Outils d'IA chauds

    Undresser.AI Undress

    Undresser.AI Undress

    Application basée sur l'IA pour créer des photos de nu réalistes

    AI Clothes Remover

    AI Clothes Remover

    Outil d'IA en ligne pour supprimer les vêtements des photos.

    Undress AI Tool

    Undress AI Tool

    Images de déshabillage gratuites

    Clothoff.io

    Clothoff.io

    Dissolvant de vêtements AI

    AI Hentai Generator

    AI Hentai Generator

    Générez AI Hentai gratuitement.

    Outils chauds

    Bloc-notes++7.3.1

    Bloc-notes++7.3.1

    Éditeur de code facile à utiliser et gratuit

    SublimeText3 version chinoise

    SublimeText3 version chinoise

    Version chinoise, très simple à utiliser

    Envoyer Studio 13.0.1

    Envoyer Studio 13.0.1

    Puissant environnement de développement intégré PHP

    Dreamweaver CS6

    Dreamweaver CS6

    Outils de développement Web visuel

    SublimeText3 version Mac

    SublimeText3 version Mac

    Logiciel d'édition de code au niveau de Dieu (SublimeText3)

    Nombre parfait en Java Nombre parfait en Java Aug 30, 2024 pm 04:28 PM

    Guide du nombre parfait en Java. Nous discutons ici de la définition, comment vérifier le nombre parfait en Java ?, des exemples d'implémentation de code.

    Weka en Java Weka en Java Aug 30, 2024 pm 04:28 PM

    Guide de Weka en Java. Nous discutons ici de l'introduction, de la façon d'utiliser Weka Java, du type de plate-forme et des avantages avec des exemples.

    Numéro de Smith en Java Numéro de Smith en Java Aug 30, 2024 pm 04:28 PM

    Guide du nombre de Smith en Java. Nous discutons ici de la définition, comment vérifier le numéro Smith en Java ? exemple avec implémentation de code.

    Questions d'entretien chez Java Spring Questions d'entretien chez Java Spring Aug 30, 2024 pm 04:29 PM

    Dans cet article, nous avons conservé les questions d'entretien Java Spring les plus posées avec leurs réponses détaillées. Pour que vous puissiez réussir l'interview.

    Break or Return of Java 8 Stream Forach? Break or Return of Java 8 Stream Forach? Feb 07, 2025 pm 12:09 PM

    Java 8 présente l'API Stream, fournissant un moyen puissant et expressif de traiter les collections de données. Cependant, une question courante lors de l'utilisation du flux est: comment se casser ou revenir d'une opération FOREAK? Les boucles traditionnelles permettent une interruption ou un retour précoce, mais la méthode Foreach de Stream ne prend pas directement en charge cette méthode. Cet article expliquera les raisons et explorera des méthodes alternatives pour la mise en œuvre de terminaison prématurée dans les systèmes de traitement de flux. Lire plus approfondie: Améliorations de l'API Java Stream Comprendre le flux Forach La méthode foreach est une opération terminale qui effectue une opération sur chaque élément du flux. Son intention de conception est

    Horodatage à ce jour en Java Horodatage à ce jour en Java Aug 30, 2024 pm 04:28 PM

    Guide de TimeStamp to Date en Java. Ici, nous discutons également de l'introduction et de la façon de convertir l'horodatage en date en Java avec des exemples.

    Programme Java pour trouver le volume de la capsule Programme Java pour trouver le volume de la capsule Feb 07, 2025 am 11:37 AM

    Les capsules sont des figures géométriques tridimensionnelles, composées d'un cylindre et d'un hémisphère aux deux extrémités. Le volume de la capsule peut être calculé en ajoutant le volume du cylindre et le volume de l'hémisphère aux deux extrémités. Ce tutoriel discutera de la façon de calculer le volume d'une capsule donnée en Java en utilisant différentes méthodes. Formule de volume de capsule La formule du volume de la capsule est la suivante: Volume de capsule = volume cylindrique volume de deux hémisphères volume dans, R: Le rayon de l'hémisphère. H: La hauteur du cylindre (à l'exclusion de l'hémisphère). Exemple 1 entrer Rayon = 5 unités Hauteur = 10 unités Sortir Volume = 1570,8 unités cubes expliquer Calculer le volume à l'aide de la formule: Volume = π × r2 × h (4

    Comment exécuter votre première application Spring Boot dans Spring Tool Suite? Comment exécuter votre première application Spring Boot dans Spring Tool Suite? Feb 07, 2025 pm 12:11 PM

    Spring Boot simplifie la création d'applications Java robustes, évolutives et prêtes à la production, révolutionnant le développement de Java. Son approche "Convention sur la configuration", inhérente à l'écosystème de ressort, minimise la configuration manuelle, allo

    See all articles