Kurssisisältö
Java OOP
Java OOP
Koodieditorin Pääominaisuudet
Ominaisuudet
Käydään lyhyesti läpi IntelliJ IDEA:n apuominaisuudet:
Virheenkäsittely
Tehtävämme on kirjoittaa metodi, joka ottaa merkkijonon ja lajittelee kaikki sen kirjaimet aakkosjärjestykseen. Kirjoittaessamme tätä metodia tutustumme IDE:mme ominaisuuksiin. Metodin allekirjoitus on jo annettu meille, mutta IDEA korostaa meille syntaksivirheen. Kun viemme hiiren tämän virheen päälle, näemme mikä ongelma on: emme ole lisänneet return
-avainsanaa metodin paluuarvon kanssa. IDEA tarjoaa meille myös mahdollisuuden korjata tämä yhdellä painikkeella.
Huomio
Syntaksivirhe tarkoittaa virhettä, joka osoittaa virheellistä syntaksia koodissa. Esimerkiksi, jos haluamme määritellä
String
-muuttujan ja kirjoitammeSrting variable
oikeanString variable
sijaan, kyseessä on syntaksivirhe.
Lisäksi oikeassa yläkulmassa näemme yhden syntaksivirheen ja yhden varoituksen. Kun klikkaamme tätä painiketta, avautuu konsoli, jossa näkyy virheiden lista muodossa: "virheen nimi: rivi, jossa virhe havaittiin." Meidän tapauksessamme se on missing return statement: 9
.
Koodiehdotukset
Ensimmäiseksi luomme muuttujan tyyppiä String
. Kun alamme kirjoittaa kirjaimella "S", tapahtuu ihme – IntelliJ IDEA ehdottaa automaattisesti vaihtoehtoja. Voimme liikkua ehdotusten välillä nuolinäppäimillä. Valitaksemme haluamamme painamme "tab"-näppäintä, jolloin IntelliJ IDEA täydentää sen automaattisesti.
Huomio
Tällaisia automaattisia täydennysehdotuksia tulee esiintymään hyvin usein ja lähes kaikkeen. Suosittelen kokeilemaan erilaisten ohjelmien kirjoittamista itse, niin huomaat kuinka paljon se yksinkertaistaa ja automaattistaa työtä.
Metodiehdotukset
Seuraavaksi meidän täytyy luoda taulukko tyyppiä String
ja sijoittaa siihen jokainen parametrina saadun string
-merkkijonon merkki. Tätä varten käytämme split()
-metodia. Kun kirjoitamme pisteen kutsuaksemme metodia, ikkuna avautuu jälleen ja ehdottaa split()
-metodin käyttöä. IntelliJ IDEA tekee kaiken työn puolestamme. Oikealla näemme metodin palauttaman tietotyypin ja vasemmalla nimen sekä parametrit, joita metodi ottaa vastaan. Valitsemme split()
-metodin ja jatkamme eteenpäin.
Tuontiehdotukset
Järjestääksemme taulukon aakkosjärjestykseen, meidän täytyy käyttää sort()
-metodia Arrays
-kirjastosta. Voimme tuoda tämän kirjaston automaattisesti kirjoittamalla Arrays
, ja IntelliJ tuo kirjaston automaattisesti puolestamme. Meidän tarvitsee vain painaa "tab", kun IntelliJ ehdottaa kirjaston tuontia.
Silmukoiden automaattinen täydennys
Loimme ja järjestimme taulukon. Seuraavaksi loimme StringBuilder
-luokan olion muuntaaksemme järjestetyn taulukon String
-muotoon. Tätä varten tarvitsemme for-each-silmukan, jossa käytämme append()
-metodia lisätäksemme taulukon alkiot merkkijonoon. Kun alamme kirjoittaa taulukon nimeä, IntelliJ ehdottaa useita vaihtoehtoja - "for" ja "for-each". Valitsemme "for-each" nuolinäppäimillä, ja IntelliJ luo meille mallin for-each-silmukan kirjoittamista varten.
Yhteenveto
Kirjoitimme menetelmän merkkijonon järjestämiseksi aakkosjärjestykseen käyttäen IntelliJ:n tarjoamia työkaluja. Emme käsitelleet kaikkia työkaluja, koska niitä on niin paljon. Niitä on niin paljon, että edes tunnin mittainen video ei kattaisi kaikkia ominaisuuksia. Joten toistan: kokeile, harjoittele, ja opit käyttämään kaikkia työkaluja tehokkaasti.
Tässä on kuvakaappauksesta otettu koodi, kirjoitettu uudelleen paremman luettavuuden ja selkeyden vuoksi:
Main.java
package com.example; import java.util.Arrays; public class Main { public static void main(String[] args) { String helloWorld = "Hello world"; System.out.println(sortString(helloWorld)); } static String sortString(String string) { String result = new String(); String[] array = string.split(""); Arrays.sort(array); StringBuilder builder = new StringBuilder(); for (String element : array) { builder.append(element); } result = builder.toString(); return result; } }
1. Mitä IntelliJ IDEA tekee, kun se havaitsee syntaksivirheen koodissasi?
2. Miten IntelliJ IDEA auttaa valitsemaan ja viimeistelemään koodiehdotuksia?
3. Mitä IntelliJ IDEA tarjoaa, kun alat kirjoittaa metodikutsua?
4. Miten IntelliJ IDEA käsittelee kirjastojen tuontia?
5. Miten IntelliJ IDEA auttaa silmukoiden, kuten for-each-silmukoiden, luomisessa?
Kiitos palautteestasi!