CodeGym/Blog Java/Random-FR/Ancien niveau 07
John Squirrels
Niveau 41
San Francisco

Ancien niveau 07

Publié dans le groupe Random-FR
membres

Technologies de l'information

Ancien niveau 07 - 1La révolution informatique, qui a commencé à la fin du XXe siècle, a abouti à la création d'Internet (le Web) dans les années 90. Et ce fut le début d'une révolution encore plus grande. L'effet de la création d'Internet est comme l'industrialisation. Mais le plus délicieux est que ce processus ne fait que commencer.

Nouveau monde

La quantité de sites est supérieure à 200 millions. 3 milliards d'internautes. Ventes aux enchères sur Internet, sites Web, boutiques en ligne, services Internet. L'industrie des technologies de l'information croît de 20 à 30 % par an. C'est des tarifs monstrueux. Et ça ne cesse de grandir. Depuis 10 ans dans la Silicon Valley (le principal centre de l'industrie high-tech du monde), une entreprise se crée tous les 2 mois, ce qui coûte ensuite des milliards de dollars. Sans parler des stars de l'Internet telles que Facebook (220 milliards de dollars), Amazon (140 milliards de dollars) et Google (350 milliards de dollars). Toutes ces entreprises n'apparaîtraient pas s'il n'y avait pas Internet. Tout cela entraîne une forte demande de spécialistes en informatique. L'industrie mondiale de la haute technologie requiert : des développeurs de logiciels, des concepteurs, des testeurs d'assurance qualité, des architectes, des gestionnaires, des administrateurs système et d'autres spécialistes.

C'est bien d'être informaticien

Ancien niveau 07 - 2Si vous êtes un spécialiste de l'informatique, c'est un moment en or pour vous. Vous pouvez travailler pour une grande entreprise et vivre dans une petite ville ou travailler pour une entreprise étrangère. Vous pouvez gagner deux fois moins que dans l'UE, par exemple, mais vous obtiendrez 3 à 10 fois plus que sur le marché du travail local. Plus la ville est petite, plus la différence est grande. Vous recevrez une expérience précieuse, beaucoup d'argent et un avenir radieux. Parfois, vous irez en voyage d'affaires au bureau de votre employeur. Et si vous l'aimez beaucoup, vous pouvez vous y installer. Une marée montante soulève tous les bateaux. Pourquoi ne serait-ce pas un tel bateau qui soit au bon moment et au bon endroit ? C'est aussi un art.

Vous avez atteint un nouveau niveau

Niveau 7

Ancien niveau 07 - 3

1 Elly, tableaux

- Salut Amigo ! - Quoi de neuf, Elly ? - Aujourd'hui, je vais vous parler d'une nouvelle entité intéressante - les tableaux. Un tableau est un type de données spécial qui peut stocker plusieurs valeurs. Ancien niveau 07 - 4- Je vais commencer par l'analogie. Comparons une maison habituelle et une tour. Une maison est occupée par une seule famille, alors qu'un immeuble de grande hauteur est divisé en appartements. Vous devez spécifier l'adresse unique pour écrire une lettre à une famille qui vit dans la maison. Pour une famille qui habite en appartement, vous devez préciser en plus le numéro de l'appartement. - Ouais, c'est clair. - Ainsi, une variable tableau est comme un immeuble de grande hauteur. Vous pouvez y stocker plusieurs valeurs. Une telle variable a des appartements (cellules). Chacun des appartements est accessible par son numéro (index).Pour ce faire, après le nom de la variable entre crochets, vous devez spécifier l'index de la cellule accédée. C'est assez simple. - Je l'espère. - Une variable tableau (un immeuble de grande hauteur) peut être de n'importe quel type, il suffit donc d'écrire TypeName[] variable_nameà la place de TypeName variable_name. - Voici des exemples de ce que vous pouvez faire avec des tableaux : Ancien niveau 07 - 5- Comme c'est excitant ! - Une variable tableau nécessite une initialisation supplémentaire. - Pourquoi donc? - Une variable usuelle est prête à l'emploi juste après sa déclaration. Quant aux tableaux, c'est un peu plus compliqué : - Tout d'abord, vous devez créer un conteneur de N éléments, puis vous pouvez y placer des valeurs. Ancien niveau 07 - 6- Ouais. Cela devient plus clair maintenant. - Les bases sur les tableaux :
  1. Le tableau est composé de plusieurs cellules.
  2. Chaque cellule est accessible en indiquant son numéro.
  3. Toutes les cellules sont du même type.
  4. Dans un tableau de n éléments, les cellules ont les indices 0,1,2,...,n-1. Il n'y a pas de cellule d'index n dans le tableau.
  5. La valeur initiale de toutes les cellules est nulle, pour les types primitifs - 0, 0,0 pour les fractionnaires, faux - pour le type booléen, exactement comme dans les variables simples non initialisées.
  6. La liste String[] n'est qu'une déclaration d'une variable. Vous devez d'abord créer un tableau (conteneur) et le mettre dans la variable, puis l'utiliser. Voir l'exemple ci-dessous.
  7. Lorsque vous créez un tableau d'objets (conteneur), il est nécessaire de spécifier sa longueur (combien de cellules il aura). Pour cela il faut écrire une commande : TypeName est le type des valeurs qui seront stockées dans les cellules du tableau.new TypeName[n];
Ancien niveau 07 - 7- Exemples: Ancien niveau 07 - 8

2 Risha, Arrangement des tableaux en mémoire

- Salut Amigo ! Laissez-moi vous montrer comment tout cela fonctionne dans la mémoire : Ancien niveau 07 - 9- Et c'est quoi ce 345 ? - En fait, je l'ai arraché de l'air, mais normalement, c'est l'adresse de la chaîne contenant le mot «Stop». - Pour les tableaux, c'est un peu plus compliqué :
Ancien niveau 07 - 10
- 155 166 177 sont-ils aussi des nombres sortis d'un chapeau qui représentent l'adresse des chaînes à droite ? - Ouais. C'est une bonne chose que vous l'ayez deviné. Notez que, dans la deuxième image, il y a un objet supplémentaire - un tableau de 10 cellules. - Tout est clair, merci. Une image vaut mieux que mille mots. Merci Risha.

3 Risha, Exemples de tableaux Array

- Je veux vous donner quelques exemples de choses intéressantes que vous pouvez faire avec des tableaux : Exemple 1. Ancien niveau 07 - 11Exemple 2. Ancien niveau 07 - 12Exemple 3. Ancien niveau 07 - 13Exemple 4. Ancien niveau 07 - 14Exemple 5. Ancien niveau 07 - 15

4 Diego, Tâches pour la création et l'utilisation des tableaux

- Salut Amigo ! Voici quelques tâches pour vous, mon pote :
Tâches
1 1. Maximum d'un tableau de 20 nombres
1. Dans la méthode initializeArray() :
1.1. Créer un tableau de 20 nombres
1.2. Lire à partir du clavier 20 nombres et remplir le tableau avec eux
2. La méthode max(int[] array) doit trouver le nombre maximum d'éléments du tableau

2

2. Tableau de chaînes dans l'ordre inverse
1. Créez un tableau de 10 chaînes.
2. Lisez à partir du clavier 8 chaînes et stockez-les dans le tableau.
3. Affichez à l'écran le contenu de l'ensemble du tableau (10 éléments) dans l'ordre inverse. Chaque élément doit être sur une nouvelle ligne.

3 3. 2 tableaux
1. Créez un tableau de 10 chaînes.
2. Créez un autre tableau de 10 nombres.
3. Lisez à partir du clavier 10 chaînes et remplissez le tableau de chaînes avec elles.
4. Écrivez la longueur d'une chaîne à partir de chaque cellule du tableau de chaînes dans la cellule du tableau de nombres avec le même index. Afficher à l'écran le contenu du tableau de nombres. Chaque valeur doit être sur une nouvelle ligne.
4 4. Tableau de nombres dans l'ordre inverse
1. Créez un tableau de 10 nombres.
2. Lisez à partir du clavier 10 numéros et stockez-les dans le tableau.
3. Disposez les éléments du tableau dans l'ordre inverse.
4. Affichez à l'écran le résultat. Chaque valeur doit être sur une nouvelle ligne.
5 5. Un grand et deux petits tableaux
1. Créez un tableau de 20 nombres.
2. Lisez à partir du clavier 20 numéros et remplissez le tableau avec eux.
3. Créez deux tableaux de 10 nombres chacun.
4. Copiez les nombres du grand tableau dans deux petits tableaux : la moitié des nombres dans le premier tableau, l'autre moitié dans le second.
5. Affichez à l'écran le deuxième petit tableau. Chaque valeur doit être sur une nouvelle ligne.

5 Elly, ArrayList contre Array

- C'est moi. - Salut Elly ! - Aujourd'hui, nous avons un nouveau sujet passionnant ! Je vais maintenant vous parler d'une nouvelle classe intéressante, ArrayList . - Oh, une nouvelle classe ? Ouah! Qu'est ce que ça fait? - Permettez-moi de commencer par une petite histoire en arrière. Les programmeurs n'aimaient pas une propriété d'un tableau : il est impossible de changer sa taille. Que faire si vous souhaitez stocker trois entrées de plus dans le tableau, mais qu'il n'y a qu'un seul espace libre ? - La seule solution au problème de manque d'espace était de créer un très grand tableau contenant tous les éléments. Mais cela a souvent conduit à une utilisation inefficace de la mémoire. Par exemple, si dans 99% de la durée de vie du tableau, vous n'aviez besoin de stocker que 3 éléments dans le tableau, et seulement dans 1% - 100 éléments, vous devrez créer un tableau de 100 éléments. - Alors qu'est-ce que les programmeurs ont trouvé ? - Ils ont écrit la classe ArrayList qui faisait le même travail que Array, mais pouvait varier sa taille. - Un mouvement intéressant. Et comment ont-ils fait ça ? - Chaque objet ArrayList stocke un tableau ordinaire d'éléments à l'intérieur. Lorsque vous lisez des éléments de ArrayList , il les lit à partir de son tableau interne. Lorsque vous écrivez les éléments, il les écrit dans le tableau interne. Comparez : Ancien niveau 07 - 16- Alors quel est l'avantage de l'ArrayList ? Quant à moi, le code est devenu plus long. - Tout d'abord, ArrayList prend en charge certaines fonctionnalités supplémentaires non disponibles dans le tableau, que les programmeurs utilisent très souvent. Par exemple,insérez des éléments et supprimez-les du milieu du tableau sans laisser de trous. - Deuxièmement, ArrayList peut changer sa taille . Lorsque ArrayList a besoin de stocker un élément supplémentaire dans son tableau interne et qu'il n'y a pas d'espace libre, voici ce qui se passe à l'intérieur de ArrayList :
  1. un autre tableau est créé, deux fois plus grand.
  2. tous les éléments de l'ancien tableau sont copiés dans le nouveau tableau.
  3. un nouveau tableau est stocké dans une variable interne de l'objet ArrayList, l'ancien tableau est déclaré poubelle (nous ne stockons simplement plus sa référence).
Ancien niveau 07 - 17Et comment travailler avec la ArrayList ? - En fait, de la même manière qu'avec un tableau. Regardez ici. Comparons le travail avec ArrayList et travaillons avec un tableau. A titre d'exemple, résolvons la tâche suivante : « Le programme doit lire à partir du clavier 10 chaînes et les afficher à l'écran dans l'ordre inverse ». - Vérifiez ceci : Ancien niveau 07 - 18- J'ai peint des actions équivalentes dans les deux colonnes avec une seule couleur. - Cela semble différent, mais si vous regardez de plus près, tout est pareil. - Ouais. Maintenant, nous n'avons plus de crochets lorsque nous utilisons ArrayList . Au lieu de cela, nous utilisons les méthodes get , set et add . - Je l'ai remarqué. Mais c'est quand même très similaire.

6 Diego, Tâches ArrayList

- Vous ne faites plus rien ? Vous êtes un robot, n'est-ce pas ? Les robots sont toujours occupés avec quelque chose. Voici quelques tâches pour vous tenir éveillé. Mais commençons par quelques conseils. - Astuce 1 : Une liste signifie le plus souvent une ArrayList . - Astuce 2 : Une chaîne signifie le type String . - Astuce 3 : Créer une liste de chaînes signifie le plus souvent ArrayList<String> list = new ArrayList<String>();
Tâches
1 Tâche 1. 5 chaînes différentes dans une liste
1. Créez une liste de chaînes.
2. Ajoutez 5 chaînes différentes à la liste.
3. Affichez à l'écran sa taille.
4. Affichez à l'écran le contenu de la liste. Chaque valeur doit être sur une nouvelle ligne. Utilisez une boucle.
2 Tâche 2. 5 lignes : « 101 », « 102 », « 103 », « 104 », « 105 »
1. Créez une liste de chaînes.
2. Ajoutez 5 chaînes à la liste. « 101 », « 102 », « 103 », « 104 », « 105 ».
3. Supprimez le premier, celui du milieu et le dernier.
4. Affichez à l'écran le contenu de la liste. Chaque valeur doit être sur une nouvelle ligne. Utilisez une boucle.
5. Affichez à l'écran sa taille. (Après avoir supprimé une entrée, les index des autres entrées changent. Par exemple, si nous supprimons le premier élément, le second devient le premier).
3 Tâche 3. 5 lignes dans l'ordre inverse
1. Créez une liste de chaînes.
2. Lisez 5 chaînes à partir du clavier, puis ajoutez-les à la liste.
3. Disposez-les dans l'ordre inverse.
4. Affichez à l'écran le contenu de la liste. Chaque valeur doit être sur une nouvelle ligne. Utilisez une boucle.
4

Tâche 4. Ajouter 5 chaînes au début de la liste
1. Créer une liste de chaînes.
2. Lisez à partir du clavier 5 cordes. Ajoutez ces chaînes au début de la liste, pas à la fin.
3. Affichez à l'écran le contenu de la liste. Chaque valeur doit être sur une nouvelle ligne. Utilisez une boucle.

5 Tâche 5. Supprimer la dernière chaîne et l'ajouter au début de la liste
1. Créez une liste de chaînes.
2. Lire à partir du clavier 5 cordes. Ajoutez ces chaînes à la liste.
3. Supprimez la dernière chaîne et ajoutez-la au début de la liste. Répétez cette action 13 fois.
4. Affichez à l'écran le contenu de la liste. Chaque valeur doit être sur une nouvelle ligne. Utilisez une boucle.

7 Risha, Génériques

- Maintenant, un autre sujet génial. - Cette journée est pleine de surprises. C'est comme un vrai anniversaire. - Aujourd'hui, je vais vous dire ce que sont les génériques. Les génériques sont des types qui ont des paramètres. En Java, les classes de conteneur vous permettent de spécifier les types de leurs objets internes . - Lorsque nous déclarons une variable générique, nous spécifions deux types au lieu d'un : le type de la variable et le type des données stockées dans la variable. Un bon exemple de ceci est ArrayList. Lorsque nous créons un nouvel objet/variable de type ArrayList, il est également bon de spécifier le type de valeurs à stocker dans la liste. Ancien niveau 07 - 19- Ça a l'air excitant. J'ai particulièrement aimé ce que vous avez dit à propos de n'importe quel type. - Il semble juste être bon. En fait, si dans une méthode, des chaînes sont placées dans une ArrayList, et dans l'autre méthode, vous travaillez avec son contenu et vous attendez à ce qu'il n'y ait que des nombres, le programme plantera. - Je vois. - Jusqu'à présent, nous n'allons pas créer nos propres classes avec des paramètres de type, nous allons apprendre à utiliser des classes écrites par des créateurs Java. - Puis-je utiliser n'importe quelle classe comme paramètre de type, même celle que j'ai écrite moi-même ? - Oui, n'importe quel type, sauf les primitifs. Tous les paramètres de classe doivent être hérités de la classe Object. - Je ne peux donc pas écrire ArrayList<int> , n'est-ce pas ? - Vous ne pouvez pas. Mais les développeurs Java ont écrit pour les types primitifs leurs analogues non primitifs - les classes héritées deObjet . Voici à quoi cela ressemble : Ancien niveau 07 - 20- Les types primitifs et les classes analogiques (classes wrapper) peuvent facilement être assignés les uns aux autres : Ancien niveau 07 - 21- Très bien. Ensuite, je suppose que j'utiliserai plus souvent ArrayList.

8 Risha, Exemples de ArrayList, Génériques

Ancien niveau 07 - 22- Maintenant, je vais vous donner des choses vraiment utiles. Voici quelques exemples pratiques pour travailler avec ArrayList et Generics : - Exemple 1. Ancien niveau 07 - 23- Exemple 2. Ancien niveau 07 - 24- Exemple 3. Ancien niveau 07 - 25- Exemple 4. Ancien niveau 07 - 26- Exemple 5. Ancien niveau 07 - 27- Génial ! Donc, Diego va me donner un tas de tâches similaires maintenant, n'est-ce pas ? - Ouais!

9 Diego, liste<T>tâches

- Enfin vous êtes libre. Je suis fatigué de garder à l'esprit ces tâches pour vous. En voici quelques autres pour vous tenir au courant :
Tâches supplémentaires à effectuer dans Intellij Idea
1 1. Trois tableaux
1. Lire au clavier 20 nombres, les enregistrer dans une liste, puis les trier dans trois autres listes :
La liste 1 stocke les nombres divisibles par 3 ( x%3==0 )
La liste 2 stocke les nombres divisibles par 2 ( x%2==0 )
La liste 3 stocke le reste des nombres.
Les nombres divisibles par 3 et 2 en même temps (par exemple 6) appartiennent aux deux listes – liste 1 et liste 2.
2. La méthode printList() doit afficher chaque élément de la liste sur une nouvelle ligne.
3. Utilisez la méthode printList() pour afficher à l'écran ces trois listes. D'abord la liste 1 doit être affichée, puis la liste 2, après cette liste 3.
2 2. 5 mots dans l'ordre inverse
Lire à partir du clavier 5 mots. Ajoutez-les dans une liste de chaînes et affichez-les à l'écran dans l'ordre inverse.
3 3. Le mot « ici »
1. Créez une liste des mots « arrête », « regarde », « écoute ».
2. Ajoutez une chaîne contenant « ici » après chaque mot.
3. Affichez le résultat. Chaque élément de la liste doit être sur une nouvelle ligne. Utilisez la boucle « for ».
4 4. Lettres «r» et «l»
1. Créez une liste de mots/chaînes, remplissez-la avec ce que vous voulez.
2. La méthode fix() devrait :
2.1. supprimer tous les mots contenant la lettre «r» de la liste des chaînes
2.2. double tous les mots contenant la lettre «l».
2.3. laissez le mot inchangé s'il contient à la fois les lettres «r» et «l».
2.4. ne faites rien avec d'autres mots. Exemple

:
saule rose
chêne
lyre Données


de sortie :
saule
saule chêne
lyre
5 5. Dupliquer les mots
1. Lire à partir du clavier 10 mots/chaînes, les ajouter dans une liste de chaînes.
2. La méthode doubleValues ​​doit dupliquer les mots selon le modèle :
a,b,c → a,a,b,b,c,c.
3. Affichez le résultat. Chaque élément de la liste doit être sur une nouvelle ligne. Utilisez la boucle « for ».

10 Professeur

Ancien niveau 07 - 28- J'ai trouvé mes merveilleuses conférences! Ainsi, aujourd'hui, vous acquerrez les connaissances les plus précieuses sur les tableaux et les listes. Les voici : Conseils sur ArrayList en Java

11 juillet

- Salut Amigo ! Je suis content que vous ayez surmonté tout cela - vous méritez une récompense :

12 capitaines écureuils

- Salut, soldat ! - Bonjour Monsieur! - J'ai une super nouvelle pour vous. Voici une vérification rapide pour renforcer vos compétences. Faites-le tous les jours et vous améliorerez vos compétences très rapidement. Les tâches sont spécialement conçues pour être effectuées dans Intellij IDEA.
Tâches supplémentaires à effectuer dans Intellij Idea
1 1. Affichez les numéros dans l'ordre inverse
Lisez sur le clavier 10 numéros et remplissez la liste avec eux.
Affichez à l'écran les numéros dans l'ordre inverse. Utilisez la boucle.
2 2. Déplacer les M premières lignes vers la fin de la liste
Lire au clavier 2 chiffres : N et M .
Lisez à partir du clavier N chaînes et remplissez-en une liste.
Déplacer les M premières lignes à la fin de la liste
Afficher à l'écran la liste. Chaque valeur doit être sur une nouvelle ligne.
3 3. Le plus grand et le plus petit nombre d'un tableau
Créez un tableau de 20 nombres.
Remplissez-le avec des chiffres qui sont lus à partir du clavier.
Trouver le plus grand et le plus petit nombre dans un tableau.
Affichez à l'écran les nombres les plus grands et les plus petits séparés par un espace.
4 4. Lisez les chaînes à partir du clavier jusqu'à ce que l'utilisateur entre la chaîne "fin".
Créez une liste de chaînes.
Lisez à partir des chaînes du clavier (ce que vous voulez), ajoutez-les à la liste.
Lire les chaînes à partir du clavier jusqu'à ce que l'utilisateur entre la chaîne "fin". "fin" doit être omis.
Affichez à l'écran les chaînes. Chaque chaîne doit être sur une nouvelle ligne.
5 5. Bang !
Écrivez un programme qui compte à rebours de 30 à 0 et affiche « Bang ! » à la fin. Le programme devrait réduire le nombre 10 fois par seconde. Utilisez la fonction ci-dessous pour insérer un délai :
Thread.sleep(100); //retard d'un dixième de seconde.
Exemple :
30
29

1
0
Bang !
6 6. Famille
Créez une classe Human avec les champs : String name , boolean sex , int age , Human father , Human mother . Créez 9 objets de classe Humain et remplissez-les de manière à obtenir deux grands-pères, deux grands-mères, un père, une mère et trois enfants. Afficher à l'écran les objets à l'écran.
Astuce :
Si vous écrivez votre méthode String toString() dans la classe Human, alors elle sera utilisée pour afficher un objet.
Exemple de sortie :
Nom : Anna, sexe : femme, âge : 21, père : Paul, mère : Kate
Nom : Kate, sexe : femme, âge : 55
Nom : Ian, sexe : masculin, âge : 2 ans, père : Michael, mère : Anna
7 7. Déplacez un modificateur statique
Déplacez un modificateur statique pour que le programme se compile.
- Ces tâches étaient pour les verts. J'ai ajouté des tâches bonus de plus grande complexité. Uniquement pour les meilleurs canons.
Tâches bonus
1 1. Le programme ne se compile pas et ne s'exécute pas. Répare le.
Tâche : Lisez à partir du clavier les données du chat et affichez-les à l'écran.
Exemple :
Le nom du chat est Jinx, l'âge est de 6 ans, le poids est de 5, la queue = 22 Le
nom du chat est Maisy, l'âge est de 8 ans, le poids est de 7, la queue = 20
2 2. Ajoutez de nouvelles fonctionnalités au programme.
Ancienne tâche : le programme lit les chaînes jusqu'à ce que l'utilisateur entre une ligne vide en appuyant sur Entrée. Ensuite, il convertit les minuscules en majuscules (Maman se transforme en MOM) et les affiche à l'écran.
Nouvelle tâche : le programme doit lire les chaînes jusqu'à ce que l'utilisateur entre une ligne vide en appuyant sur Entrée. Le programme construit alors une nouvelle liste. Si la chaîne a un nombre pair de caractères, la chaîne est dupliquée, si le nombre est impair, la chaîne est triplée.
Exemple d'entrée :
Cat
Cats
Me
Exemple de sortie :
Cat Cat Cat
Cats Cats
Me Me
3 3. Apprendre et pratiquer l'algorithme.
Lire au clavier 20 chiffres et les afficher par ordre décroissant.
Commentaires
  • Populaires
  • Nouveau
  • Anciennes
Tu dois être connecté(e) pour laisser un commentaire
Cette page ne comporte pas encore de commentaires