Kursusindhold
Java OOP
Java OOP
Hovedfunktioner i Kodeeditoren
Funktioner
Lad os kort gennemgå hjælpefunktionerne i IntelliJ IDEA:
Fejlhåndtering
Vores opgave er at skrive en metode, der tager en streng og sorterer alle bogstaverne i den i alfabetisk rækkefølge. Mens vi skriver denne metode, vil vi udforske funktionerne i vores IDE. Metodens signatur er allerede givet til os, men IDEA fremhæver en syntaksfejl for os. Hvis vi holder musen over denne fejl, kan vi se, hvad problemet er: vi har ikke tilføjet return
-nøgleordet med metodens returtype. IDEA tilbyder os også muligheden for at rette dette ved at klikke på en enkelt knap.
Note
En syntaksfejl er en fejl, der angiver forkert syntaks i koden. For eksempel, hvis vi vil erklære en
String
-variabel og i stedet forString variable
skriverSrting variable
, vil det være en syntaksfejl.
Ser vi også øverst til højre, kan vi se én syntaksfejl og én advarsel. Ved at klikke på denne knap åbnes en konsol, der viser en liste over fejl i formatet: "fejlens navn: linje hvor denne fejl er fundet." I vores tilfælde er det missing return statement: 9
.
Kodeforslag
Det første vi gør, er at oprette en variabel af typen String
. Når vi begynder at skrive med bogstavet "S", ser vi et mirakel – IntelliJ IDEA foreslår automatisk muligheder for os. Vi kan navigere gennem forslagene ved hjælp af piletasterne på vores tastatur. For at vælge det, vi har brug for, trykker vi på "tab"-tasten, og IntelliJ IDEA fuldfører det automatisk for os.
Note
Sådanne auto-udfyldelsesforslag vil forekomme meget ofte og næsten for alt. Jeg anbefaler, at du prøver at skrive forskellige programmer selv, og du vil se, hvor meget det forenkler og automatiserer arbejdet.
Metodeforslag
Dernæst skal vi oprette et array af typen String
og lægge hvert tegn fra string
-parameteren ind i det. Til dette bruger vi split()
-metoden. Når vi skriver et punktum for at kalde metoden, dukker et vindue op igen, der foreslår at bruge split()
-metoden. IntelliJ IDEA klarer alt arbejdet for os. Til højre kan vi se datatypen, som metoden returnerer, og til venstre navnet og parametrene, som metoden tager. Vi vælger split()
-metoden og fortsætter videre.
Importforslag
For at sortere et array i alfabetisk rækkefølge skal vi bruge sort()
-metoden fra Arrays
-biblioteket. Vi kan importere dette bibliotek automatisk ved blot at skrive Arrays
, og IntelliJ vil automatisk importere biblioteket for os. Alt, hvad vi skal gøre, er at trykke på "tab", når IntelliJ foreslår at importere dette bibliotek.
Autofuldførelse af løkker
Vi oprettede og sorterede arrayet. Derefter oprettede vi et objekt af StringBuilder
-klassen for at konvertere det sorterede array til en String
. Til dette har vi brug for en for-each-løkke, hvor vi bruger append()
-metoden til at tilføje array-elementer til strengen. Når vi begynder at skrive navnet på arrayet, foreslår IntelliJ flere muligheder - "for" og "for-each". Vi vælger "for-each" ved hjælp af piletasterne, og IntelliJ opretter en skabelon til at skrive for-each-løkken for os.
Resumé
Vi skrev en metode til at sortere en streng i alfabetisk rækkefølge ved hjælp af værktøjerne, der leveres af IntelliJ. Vi har ikke dækket alle værktøjerne, fordi der er så mange af dem. Der er så mange, at selv en times video ikke ville dække hele sættet af funktioner. Så jeg gentager: eksperimentér, øv dig, og så vil du kunne lære alt og bruge dem effektivt.
Her er koden fra skærmbilledet, omskrevet for bedre læsbarhed og klarhed:
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. Hvad gør IntelliJ IDEA, når den registrerer en syntaksfejl i din kode?
2. Hvordan hjælper IntelliJ IDEA med at vælge og fuldføre kodeforslag?
3. Hvad tilbyder IntelliJ IDEA, når du begynder at skrive et metodekald?
4. Hvordan håndterer IntelliJ IDEA import af biblioteker?
5. Hvordan hjælper IntelliJ IDEA med at oprette løkker, såsom for-each-løkker?
Tak for dine kommentarer!