CodeGym /Java Blog /Willekeurig /Oud niveau 10
John Squirrels
Niveau 41
San Francisco

Oud niveau 10

Gepubliceerd in de groep Willekeurig

Niet hoger geen opleiding

Oud niveau 10 - 1Laten we onszelf een vraag stellen: waarom gaan mensen naar de universiteit? Onthoud die simpele zin: als je niet hard studeert, blijf je je hele leven ober. Je zou zelfs kunnen denken dat alle mensen die hoger onderwijs volgen er een hekel aan hebben om ober te zijn. Dus wat willen ze? Ze willen een baan aan de andere sociale kant van de ober. Mensen gaan naar hogescholen om goedbetaalde, hooggekwalificeerde banen te krijgen! Zodat ze een huis en een auto kunnen kopen. Heb alles; in ieder geval soms (definitie van de middenklasse). Mensen denken dat hbo-opleiding garant staat voor goedbetaalde, hooggekwalificeerde banen. Dat doet het niet. Maar hogescholen zwijgen erover, en we blijven maar denken: "Ik krijg een goede baan als ik afstudeer". Met 5 jaar aan een goede universiteit kom je geen centimeter dichter bij je 'goede baan'. Dat is de reden:

1. Leraren op hogescholen kunnen je niet leren een goede specialist te zijn.

Geef jezelf hier een duidelijk antwoord op: mensen die je leren werken op hogescholen worden bescheiden betaald, nietwaar? Zij kunnen namelijk niet in aanmerking komen voor een goede positie op de arbeidsmarkt. Ze missen zowel ervaring als kwalificatie. Degenen die er geen gebrek aan hebben, vertrekken. Aan de beste universiteiten ter wereld is het allemaal anders, maar daar hebben we het nu niet over. Wat is uw mening: zal een succesvolle financiële specialist gaan werken voor een bank die $ 150.000 per jaar verdient of lesgeven aan een universiteit die $ 60.000 per jaar verdient? Het komt vaak voor dat looser-professionals lesgeven op hogescholen, omdat ze geen andere baan konden vinden. Er zijn uitsluitingen, maar die zijn schaars. Ik ontmoette goede leraren op hogescholen, ze bestaan ​​daar echt. Maar dat is niet eens een minderheid, het zijn er maar heel weinig. Een goede leraar geeft je niet alleen theorie, maar benadrukt ook de praktische kant van zijn vak.

2. Leraren op de meeste hogescholen prijzen wetenschap, maar verachten professionele realisatie

Je moet de wortels ervan zoeken in het feit dat de meeste leraren faalden als professionals. En de enige manier om een ​​excuus te vinden is dat professionele realisatie een onwaardige bezigheid is. Als je lezingen bijwoont en vervolgens deelneemt aan wetenschappelijke conferenties, dan ben je geweldig. En als je veel overslaat omdat je werkt, dan krijg je een heel andere behandeling. Leraren zijn als kluizenaarsmonniken. Beroep is voor hen ijdelheid der ijdelheden. Ze hebben zich toegewijd aan het dienen van de godwetenschap en ze bidden de hele dag door wetenschappelijke artikelen te schrijven. Misschien is het doel nobel, maar in het echte leven is het nutteloos. Oud niveau 10 - 2

3 Verkeerd etalon van vergelijking.

Studenten vergelijken zichzelf vaak met scholieren en zijn er trots op beter te zijn. Deze illusie gaat door totdat een persoon begint na te denken over het vinden van een baan en zijn blik naar een andere kant wendt. Als studenten zichzelf zouden vergelijken met werkende specialisten, zouden ze zelfs zien dat ze hun doel in kleine stapjes bereiken. Wees niet gemiddeld op de universiteit. Want als je doet "zoals iedereen doet", krijg je het resultaat "iedereen krijgt". De meeste studenten op een universiteit zijn willekeurig, ze hebben niet echt andere opties. Misschien zijn ze door hun ouders gedwongen om naar de universiteit te gaan en hebben ze geen flauw idee van hun toekomstige beroep. Dit gebeurt veel. Vergelijk jezelf niet met je vrienden. Uw voltooide projecten en uw baansuccessen zullen de beste criteria dienen voor uw kennis en vaardigheden. Vergelijk jezelf niet met "de gezichtsloze menigte";

4 Professionele studies zijn slechts een klein deel van de kennis die je opdoet op hogescholen.

Als je komt werken, wordt je gevraagd wat je kunt, niet wat je hebt geleerd. Je baas zal geïnteresseerd zijn in wat je weet en kunt op de vereistenlijst voor de functie: je krijgt een specifieke taak, maar je krijgt geen uitleg over hoe je het moet doen, en hij verwacht te zijner tijd resultaat. Succes! Je leert geschiedenis op de universiteit en je gaat aan de slag als bankier – brengt dit je dichter bij je doel of juist verder weg? Technisch gezien weet je meer. Betekent het dat het je dichterbij brengt? Maar in feite heb je met elk semester steeds minder tijd om waardevolle professionele kennis op te doen en de hoeveelheid blijft hetzelfde. Dus praktisch - je bent verder van je doel verwijderd.

5. Het college heeft niet als doel "van u een hooggekwalificeerde specialist te maken".

Het is moeilijk om een ​​doel te raken als je het niet mikt. Op de universiteit maken ze van je een allround specialist. Je krijgt zoiets als “tweede middelbaar onderwijs”. Ze vergeten alleen te vermelden dat iemand die alles bestudeert, niets weet. Herinner je je de drie universitaire doelen nog: bèta, algemeen vormend onderwijs en beroepsonderwijs? Wat denk je dat er moest worden weggesneden om wetenschap en algemeen onderwijs toe te voegen? Juist: vakdisciplines. En denk je nog steeds dat het doel van de universiteit is om van jou een hooggekwalificeerde specialist te maken?

6. Als iemand meer dan twee vakken tegelijk studeert, verspilt hij zijn tijd.

Dit lijkt verkeerd na school onderwijs. De waarheid ervan krijg je alleen op het werk. De lessen op school zijn zo kort, niet omdat het effectief is, maar omdat een scholier nog een kind is, kan hij zich niet langer dan een uur geconcentreerd houden. Maar vaak zorgen schakelaars tussen taken ervoor dat uw hersenen niet effectief kunnen denken. Op het werk moet je presteren als een volwassene, en daar zal het vaak wisselen van taak je efficiëntie sterk verminderen. Waarom denk je dat je je in een mum van tijd kunt voorbereiden op examens? Je multitaskt simpelweg niet en je effectiviteit neemt met de tijd toe. Iets in kleine stukjes leren is volkomen dom. Stel je voor dat je slechts zes uur per week op dieet bent – ​​hoe snel komt het resultaat?

7. Op de universiteit raakt iemand het onderwerp maar een klein beetje aan.

Laten we aannemen dat je twee semesters iets studeert. Je hebt twee hoorcolleges en twee praktijklessen per week. Dat is een serieuze benadering voor de universiteit. Dus hoeveel uur maakt dat? Vier lessen is 2 academische uren (1,5 gebruikelijke uren) - dat is 6 uur per week. We studeren vier maanden in het eerste semester: september, oktober, november en december. 4 meer in de tweede: februari, maart, april, mei. In totaal: 8 maanden, elk 4,5 week. 6 uur per week. Dat is 216 uur per jaar. Zodat jullie weten, mijn beste studenten, dat er 180 werkuren per maand zijn. Elke jaarlijkse cursus kan in anderhalve maand worden geleerd, en als je echt wilt (of nodig hebt) in een maand.

8. Je leert de meeste algemene, praktisch nutteloze en verouderde kennis.

Oud niveau 10 - 3Elke kennis heeft verschillende waarden, afhankelijk van het probleem dat je moet oplossen. Als je aan het verdrinken bent, is weten hoe je moet zwemmen veel nuttiger dan de filosofiecursus die je hebt geleerd, toch? En als je een baan als kassamedewerker krijgt, is weten hoe je moet tellen beter dan de Latijnse taal op basisniveau kennen. Het nuttigste deel van uw professionele realisaties is zonder twijfel praktische ervaring en vertrouwd zijn met recente ontwikkelingen in uw beroep. Uw universiteitsleraar heeft hoogstwaarschijnlijk nog nooit praktijkervaring gehad en is niet bekend met de nieuwste ontwikkelingen. En zelfs als hij er ergens over heeft gelezen, heeft hij geen idee van hun waarde en het gebied waarop ze worden toegepast. Zelfs als je 100 nutteloze onderwerpen leert, zullen ze niet staan ​​voor 10 nuttige.

9 Praktische vaardigheden zijn 10 keer waardevoller dan theorie.

In het echte leven moet je op je werk vaak iets DOEN. Als je weet hoe het moet, of als je denkt dat je het weet, wil dat nog niet zeggen dat je het ook echt kunt . Je weet dat roken slecht voor je is, maar kun je stoppen? Je weet dat sporten de juiste keuze is, maar sport je eigenlijk? Je weet dat vreemde talen goed zijn voor je carrière, maar kun je er ook echt een paar leren? In het leven is oefenen het enige dat telt. Hoe meer kennis je hebt zonder te oefenen, hoe minder hun waarde is. Hoe ga je bepalen welke kennis verkeerd, oud, misbruikt en welke echt werkt? Heb je hier nooit over nagedacht? Welkom in de echte wereld. Je kunt verkeersregels leren op A of B, maar je kunt nog steeds niet autorijden. Theorie is een goede basis voor de praktijk. Laten we aannemen dat je een muur aan het bouwen bent: bakstenen zijn praktijk, grout is theorie. Zonder grout (theorie) zal de muur onstabiel zijn, maar zonder stenen (praktijk) is je theorie nutteloos. Dus, heren, deel uw 5 jaar op de universiteit door 10. Een half jaar - dat is het echte resultaat van uw jarenlange "inspanning". Wil je bewijs? Als je een baan krijgt en een half jaar werkt, zul je zien dat je studiekennis verdubbeld is .

Je hebt een nieuw niveau bereikt

Niveau 10

Oud niveau 10 - 4

1 Elly, Over het sterk typen van objecten

- Hé, Amigo! - Hé Elly! - Ik ben in een opgewekte bui vandaag, dus ik zal je iets heel interessants vertellen. Ik zal beginnen met primitieve typen in Java. - In Java heeft elk object en elke variabele zijn hardgecodeerde onveranderlijke type. Het type van een variabele wordt gedefinieerd tijdens de programmacompilatie, het type van een object - tijdens de creatie ervan. Het type van het nieuw gecreëerde object en/of de variabele blijft hun hele leven hetzelfde. Voorbeeld: Oud niveau 10 - 5- Maar er zijn een paar interessante details die u moet onthouden. - Ten eerste slaat een referentievariabele niet altijd het object van hetzelfde type op als zijn eigen type. - Ten tweede, in de interactie van de variabelen van twee verschillende typen, moeten ze eerst worden geconverteerd naar een gemeenschappelijk type. - Hoe zit het met de divisie? Als we 1 delen door 3, krijgen we 0,333(3). Is het niet? - Nee, dat is het niet. Als je twee gehele getallen deelt, is het resultaat ook een geheel getal. Als je 5 deelt door 3, dan is het antwoord één en twee in de rest. De rest wordt dus weggegooid. - Als je 1 door 3 deelt, krijgen we 0 (en 1 – de rest wordt weggegooid). - Wat moet ik doen als ik toch 0,333 wil halen? - In Java is het het beste om, voordat u twee gehele getallen deelt, een ervan om te zetten in een reëel (fractionele) type door het te vermenigvuldigen met reëel getal 1.0 . Oud niveau 10 - 6- Begrepen.

2 Risha, Lijst met basistypen

- Hé, Amigo! - Hé, Risha! - Je hebt de basisprincipes van Java-syntaxis al geleerd, maar ik wil je een aantal dingen gedetailleerder vertellen. - Vandaag zal ik je iets vertellen over de primitieve typen en hoeveel geheugen ze innemen. Je zult het nodig hebben, en misschien zelfs vandaag nog. Deze typen zijn: Oud niveau 10 - 7- Ik zal elk type gedetailleerd beschrijven. - Het type byte is het kleinste type gehele getallen. Elke variabele van dit type neemt slechts één byte geheugen in beslag. Het kan dus waarden opslaan in het bereik van -128 tot 127. - Waarom hebben we zo'n klein type nodig? Waarom niet overal int gebruiken? - Je kunt het. Maar als u enorme arrays maakt en u hoeft daar geen waarden van meer dan 100 in op te slaan, waarom zou u dit type dan niet gebruiken? Heb ik gelijk? - Het type kortis twee keer zo lang als het type byte en slaat ook alleen gehele getallen op. Het grootste getal dat erin past is 32767. Het grootste negatieve getal is -32768. - Je kent het type int al . Het kan gehele getallen tot twee miljard opslaan, zowel positief als negatief. - Het type float is gemaakt om echte (fractionele) getallen op te slaan. De grootte is 4 bytes. - Alle gebroken getallen worden in een zeer interessante vorm in het geheugen opgeslagen. - 987654.321 kan bijvoorbeeld worden weergegeven als 0. 987654321 *10 6 . Daarom wordt het in het geheugen weergegeven als twee cijfers «0. 987654321 » ( de significand ) en « 6 » (de exponent - de macht van tien ) - Waarom is dat zo moeilijk? - Een dergelijke interne structuur van variabelen maakt het mogelijk om veel grotere getallen op te slaan dan int, met slechts 4 bytes. Maar daarmee geven we nauwkeurigheid op. Een deel van het geheugen wordt gebruikt om exponenten op te slaan, dus breukgetallen behouden slechts 6-7 cijfers achter de komma en de rest wordt weggegooid. -Deze getallen worden ook wel drijvende kommagetallen genoemd. Trouwens, vandaar de typenaam – float . - Ik zie. - Het type double is hetzelfde type als float , maar twee keer (dubbel) zo lang - het neemt acht bytes in beslag.De maximale exponentgrootte en het aantal significante cijfers in dit type zijn groter. Gebruik dit type als u reële getallen moet opslaan. - Type char is een hybride type. De waarden kunnen zowel als getallen (die u kunt optellen en vermenigvuldigen) als als tekens worden geïnterpreteerd. Dit werd gedaan omdat, hoewel karakters een visuele weergave hebben, het voor de computer slechts cijfers zijn. Het is veel gemakkelijker om ze als cijfers te gebruiken. Er is nog een opmerking: het type char is strikt positief. Het kan geen negatieve waarden opslaan. - Het type boolean is een logisch type, het kan slechts twee waarden opslaan: true en false . - Het type Object, hoewel weergegeven in de tabel, is geen primitief type. Dit is de basisklasse voor alle klassen in Java. Ten eerste worden alle klassen beschouwd als geërfd van deze klasse en bevatten daarom de bijbehorende methoden. Ten tweede kunnen er objectreferenties van elk type aan worden toegewezen. Inclusief de nulreferentie . - Ik heb veel geleerd. Bedankt voor de lezing, Risha.

3 Elly, Type ombouw. Type verbreding en versmalling.

- En hier gaat het plezier. Ik zal je vertellen over de typeconversie. Hoewel de typen variabelen altijd hetzelfde zijn, is er een plaats waar u typen kunt converteren. Het is een opdracht . - U kunt variabelen van verschillende typen aan elkaar toewijzen. Hierdoor wordt de waarde van een variabele van het ene type geconverteerd naar een waarde van een ander type en toegewezen aan de tweede variabele. - Er zijn dus twee soorten conversie: de verbreding en de vernauwing. De verbreding is als het verplaatsen van dingen van een kleine mand naar een grotere - de bediening is soepel en probleemloos. Vernauwen is als dingen uit een grote mand in een kleinere doen: er is misschien niet genoeg ruimte en er zal iets moeten worden weggegooid. - Hier zijn soorten gesorteerd op grootte van de «mand»: Oud niveau 10 - 8- Er zijn een paar opmerkingen:
  1. char is hetzelfde "mandje" als short , maar er is één punt: bij het omgaan met waarden van short naar char , worden waarden kleiner dan 0 weggegooid. Bij het omgaan van char naar short worden waarden groter dan 32.767 weggegooid.
  2. Bij het converteren van gehele getallen naar breuken kunnen cijfers van lage orde worden weggegooid. Maar aangezien het breukgetal bedoeld is om een ​​geschatte waarde op te slaan, is een dergelijke toewijzing toegestaan.
- Bij het verkleinen van het type moet u de samensteller duidelijk laten zien dat u zich niet vergist en met opzet een deel van een getal weggooit. Gebruik hiervoor een type cast-operator . Het is een typenaam tussen haakjes . - Hier leest u hoe u variabelen van verschillende typen toewijst: Oud niveau 10 - 9 - Een type cast-operator moet worden gedeclareerd vóór een getal/variabele telkens wanneer een deel van een getal wordt weggegooid of wanneer typevernauwing optreedt. De operator is alleen van toepassing op het getal/de variabele die er direct achter volgt. Oud niveau 10 - 10- Ik zie.

4 Diego, conversietaken van het type Integer

- Hé, Amigo! Hier zijn je taken voor conversatie van integer-types. U moet de cast-operator plaatsen waar nodig, zodat het programma compileert:
Taken
1 1. Type cast en gespreksbyte
a = 1234;
int b = een;
byte c = een * een;
int d = a / c;
2 2. Typ cast en conversatie
int a = 15;
int b = 4;
vlotter c1 = a / b;
zweven c2 = (zweven) a / b;
zweven c3 = (zweven) (a / b);
3 3. Type cast en conversatie
float f = 333,50;
int i = f;
byte b = i;
4 4. Type cast en
kort gespreksnummer = 9;
teken nul = '0';
teken negen = nul + getal;
5 5. Type cast en
kort gespreksnummer = 9;
teken nul = '0';
korte nineCode = nul + nummer;

5 Elly, Conversie naar het type String

- Nu hebben we een klein, maar interessant onderwerp - Stringconversie. - In Java kunt u elk type gegevens converteren naar het type String. - Klinkt veelbelovend. - Sterker nog, het is nog beter. U kunt bijna alle typen impliciet converteren naar String. Dit wordt het beste weergegeven wanneer u twee variabelen toevoegt: String en «non-String». In dat geval wordt de niet-String-variabele gedwongen geconverteerd naar String. - Bekijk hier een paar voorbeelden: Oud niveau 10 - 11Conclusie: Als we een String toevoegen aan een ander type, wordt het tweede object geconverteerd naar String. - Let op de vierde rij van de tafel. Alle bewerkingen worden van links naar rechts uitgevoerd, dus de optelling van 5 + '\u0000' vindt plaats als de optelling van gehele getallen. - Dus als ik een code schrijf zoals String s = 1+2+3+4+5+"m" , dan krijg ik s = "15m" ? - Ja. Eerst worden de getallen opgeteld en vervolgens geconverteerd naar een string.

6 Diego, Taken over conversie van typen in het algemeen

Oud niveau 10 - 12- En nu een kleine lezing van Diego. Kort en bondig over de referentietypes. - Tot nu toe beginnen we met een variabele van het objecttype. Aan deze variabele kan een referentie van elk type worden toegewezen ( type verbreding ). Om de omgekeerde toewijzing uit te voeren ( type vernauwing ) moeten we expliciet een cast-operator specificeren: Oud niveau 10 - 13- Er zijn geen wijzigingen in het object wanneer de verwijzing ernaar wordt gewijzigd. Type-versmalling en type-verbreding bij toewijzing is het controleren van de compatibiliteit van het type referentievariabele en het objecttype. - Wow, het is nu veel duidelijker. Dank je, Diego. - Om fouten te voorkomen, zoals in de voorbeelden , is er een manier om erachter te komen welk type is opgeslagen in een variabele van het type Object : Oud niveau 10 - 14- Het is beter om een ​​dergelijke controle uit te voeren voordat elk type vernauwt als het type opgeslagen object totaal onbekend is. - Begrepen.

7 Elly, Echte types

- Hier zijn een paar interessante dingen over de echte (dat zijn fractionele) typen. Laten we beginnen met dit voorbeeld: Oud niveau 10 - 15- Als resultaat van deze berekening is de waarde van f gelijk aan … nul! - Risha vertelde me zoiets... - Oh, echt? Het is goed. Oefening baart kunst. - In feite is er geen fout in het voorbeeld. Wanneer een geheel getal wordt gedeeld door een ander geheel getal , is het resultaat ook een geheel getal; de rest van de deling wordt gewoon weggegooid. Om dit te voorkomen, moet u ervoor zorgen dat ten minste één van de twee getallen die betrokken zijn bij de deling een breuk is. - Als een van de getallen een breuk is, wordt het tweede getal eerst geconverteerd naar een breuktype en daarna volgt de deling. - Hier is hoe we dit probleem kunnen oplossen: Oud niveau 10 - 16- En wat als er variabelen bij de deling betrokken zijn? - Dan gaat het zo: Oud niveau 10 - 17- Maar dit ziet er niet goed uit. Is er een handigere delingsoperator? - Nee dat is alles. - Oké, ik denk dat er geen probleem zal zijn.

8 Elly, Letterlijk

- En tot slot, een lezing in professor-stijl door Risha, wat een heleboel nutteloze informatie is. Alle docenten vinden dit geweldig. Deze lijkt misschien moeilijk te begrijpen voor u. Dus kijk gewoon en denk er niet te veel over na. - Oké, dan ben ik klaar. - Vandaag zal ik je vertellen wat letterlijke woorden zijn. Literals zijn alle gegevens die rechtstreeks in de Java-code zijn opgeslagen. Voorbeelden: Oud niveau 10 - 18 - In feite zijn er nog meer letterlijke woorden. Met behulp van letterlijke waarden kunt u waarden van elk bekend type instellen: Oud niveau 10 - 19- Met andere woorden, de code bestaat uit methoden, klassen, variabelen,... en letterlijke waarden zijn specifieke waarden van variabelen die direct in de code zijn opgeslagen. Begrijp ik het goed? - Jawel. - Prima. Eindelijk krijg ik een beeld van al dat Java.

9 Hoogleraar, Lezing over typen

- Geweldig! Ten slotte is dit mijn favoriete onderwerp - typeconversie. Ik herinner me zelfs dat mijn professor me erover vertelde. Het was erg "fascinerend". Ik begreep er toen niets van. Maar natuurlijk begrijp je alles dankzij deze geweldige lezingen. Dit zijn ze: Java-conversies en -promoties (Oracle-documentatie) Datatypecasting (typeconversie) Java-cast en -conversies Verbreding en smalle conversies

10 juli

- Wauw! Nou, je bent echt slim, Amigo! Zoveel dingen geleerd in slechts twee weken! Je bent net een monster. Trouwens, wat dacht je van wat plezier na twee weken slavenarbeid?

11 Kapitein Eekhoorns

(- Ik heb je geholpen. Doe het thuis.) Huiswerk (10 eenheden) - Hallo, soldaat! - Goedemorgen meneer! - Ik heb geweldig nieuws voor je. Hier is een snelle check om je vaardigheden te versterken. Doe het elke dag en je zult je vaardigheden heel snel verbeteren. Taken zijn speciaal ontworpen om te doen in Intellij IDEA.
Extra taken te doen in Intellij Idea
1 1. Het juiste antwoord is: d=2.941
Voeg één type casting-operator toe om d = 2.941 te verkrijgen
2 2. Het juiste antwoord is: d=5.5
Voeg één type casting-operator toe om d = 5.5 te verkrijgen
3 3. Het juiste antwoord is: d=1.0
Voeg één type casting-operator toe om d = 1.0 te verkrijgen
4 4. Hoog salaris
Toon op het scherm het bericht «Ik wil geen Java studeren, ik wil een hoog salaris» 40 keer volgens het voorbeeld.

Voorbeeld:
ik wil geen Java leren, ik wil een hoog salaris
wil geen Java leren, ik wil een hoog salaris
wil geen Java leren, ik wil een hoog salaris
o wil geen Java leren, ik wil een groot salaris
wil geen Java leren, ik wil een hoog salaris
wil geen Java leren, ik wil een hoog salaris
5 5. Het aantal letters
Lees van het toetsenbord 10 strings en tel het aantal verschillende letters erin (voor alle 26 letters van het alfabet). Geef het resultaat weer op het scherm.

Voorbeelduitvoer:
a 5
b 8
c 3
d 7

z 9
6 6. Constructeurs van de klasse Mens
Schrijf een klasse Mens met 6 velden. Bedenk hiervoor 10 verschillende constructors en implementeer ze. Elke constructor moet betekenis hebben.
7 7. Verplaats een minimum aan statische modifiers
Verplaats zo min mogelijk statische modifiers zodat de code compileert.
8 8. Array van stringlijsten
Maak een array waarvan de elementen lijsten van strings zijn. Vul de array met alle gegevens en geef ze weer op het scherm.
9 9. Identieke woorden in de lijst
Lees 20 woorden van het toetsenbord, vul er een lijst mee. Tel het aantal identieke woorden in de lijst. Het resultaat zou een Map <String, Integer> moeten zijn . De sleutel van de kaart moet een unieke string zijn, de waarde - aantal van deze string in de lijst. Weergave naar de scherminhoud van de kaart.
10 10. Vijf grootste getallen
Maak een lijst met gehele getallen. Lees 20 gehele getallen van het toetsenbord en vul er een lijst mee. Maak een methode om getallen veilig uit de lijst te extraheren:
int safeGetElement(ArrayList<Integer> list, int index, int defaultValue)

De methode moet een element van de lijst retourneren op basis van zijn index. Als er een uitzondering optreedt in deze methode, moet u deze opvangen en de defaultValue retourneren .
- Die taken waren voor greens. Ik heb bonustaken met een hogere complexiteit toegevoegd. Alleen voor topwapens.
Bonustaken
1 1. Programma compileert en start niet. Maak het.
Taak: Het programma laat zien hoe HashMap werkt. Het programma leest van het toetsenbord een set paren (een getal en een string), plaatst ze in een HashMap en geeft op het scherm de inhoud van HashMap weer.
2 2. Voeg nieuwe functionaliteit toe aan het programma.
Oude taak: het programma zou een paar moeten weergeven (een cijfer en een tekenreeks) ingevoerd via het toetsenbord.
Nieuwe taak: het programma moet opslaan in HashMap- paren (een getal en een tekenreeks) ingevoerd vanaf het toetsenbord. Een lege string betekent het einde van de invoer. Nummers mogen herhaald worden. Strings zijn altijd uniek. Invoergegevens mogen niet verloren gaan! Het programma zou de inhoud van HashMap op het scherm moeten weergeven.

Voorbeeld invoer:
1
stop
2
kijk

Voorbeeld uitvoer:
1 stop
2 kijk
3 3. Algoritme leren en oefenen.
Taak: Lees van het toetsenbord 30 cijfers. Toon op het scherm de 10e en 11e minimum nummers.
Hint:
Het minimale aantal is het 1e minimum.
Het volgende minimum is het 2e minimum

Toelichting 1:
1 15 6 63 5 7 1 88
Het eerste minimum is 1 Het
tweede minimum is 1 Het derde minimum is 5 Het vierde minimum is 6



Toelichting 2:
0 3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60 63 66 69 72 75 78 81 84 87 36
0 6 9 39 42 78 12 15 3033 63 66 69 3 81 84 87 45 48 51 54 57 60 72 75 18 21 24 27 69 36 0
18 21 6 27 9 39 42 78 12 33 63 66 3 81 84 87 45 15 30 48 51 54 57 60 72 75 24
Het eerste minimum is 0
Het tweede minimum is 3
...
Het tiende minimum is 27
Het elfde minimum is 30

Voorbeeldinvoer:
36 0 6 9 39 42 78 12 15 30 33 63 66 69 3 81 84 87 45 48 51 54 57 60 72 75 18 21 24 27

Voorbeeld uitvoer:
27
30
Opmerkingen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION