Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Merkkijonon Käsittelytoiminnot Javassa | Merkkijonot
Johdatus Javaan

Merkkijonon Käsittelytoiminnot Javassa

Pyyhkäise näyttääksesi valikon

Todellisissa ohjelmissa merkkijonot eivät ole staattisia — niitä yhdistellään, etsitään, siivotaan ja muunnetaan jatkuvasti. Tätä kutsutaan merkkijonojen käsittelyksi: operaatioiden soveltamista tekstin muuttamiseen, tarkasteluun tai tiedon poimimiseen.

Merkkijonojen yhdistäminen

Yksinkertaisin operaatio on yhdistäminen — merkkijonojen liittäminen yhteen käyttämällä +-operaattoria:

Main.java

Main.java

1234567891011
package com.example; public class Main { public static void main(String[] args) { String customerName = "Ann"; String welcomeMessage = "Welcome " + customerName; System.out.println(welcomeMessage); // Welcome Ann } }

Kaikki muut merkkijonon käsittelytoiminnot perustuvat metodeihin — sisäänrakennettuihin toimintoihin, jotka Java tarjoaa. Oman logiikan kirjoittamisen sijaan kutsumme näitä metodeja ja annamme Javan hoitaa toiminnon. Voit ajatella niitä valmiina työkaluina, joita käytetään suoraan merkkijonoon.

length()

Jos haluat tietää, kuinka monta merkkiä merkkijono sisältää — mukaan lukien välilyönnit — käytä .length()-metodia. Se palauttaa int-arvon.

Main.java

Main.java

12345678910111213
package com.example; public class Main { public static void main(String[] args) { String customerName = "Ann"; String welcomeMessage = "Welcome " + customerName; int messageLength = welcomeMessage.length(); System.out.println(messageLength); } }

"Welcome Ann" sisältää 11 merkkiä välilyönti mukaan lukien, joten messageLength tallentaa arvon 11 ja tämä tulostetaan.

toUpperCase()

Jos kaikki merkit merkkijonossa täytyy muuntaa isoiksi kirjaimiksi — esimerkiksi kuiteissa tai etiketeissä — käytä .toUpperCase(). Palauttaa uuden String-olion.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String customerName = "anna"; String upperCaseName = customerName.toUpperCase(); System.out.println(upperCaseName); } }

.toUpperCase() ei muuta alkuperäistä customerName-arvoa — se luo uuden String-olion, jossa kaikki kirjaimet ovat isoja, joten "anna" muuttuu muotoon "ANNA".

toLowerCase()

Jos tarvitset kaikki merkit pieninä kirjaimina — hyödyllistä yhdenmukaisuuden tai vertailulogiikan kannalta — käytä .toLowerCase(). Se palauttaa uuden String-olion.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String lowerCaseOrder = order.toLowerCase(); System.out.println(lowerCaseOrder); } }

Uusi String luodaan, jossa jokainen merkki muunnetaan pieniksi kirjaimiksi, joten tuloste on "large latte with oat milk".

contains()

Jos tarvitsee tarkistaa, sisältääkö merkkijono tietyn sanan tai tekstin osan, käytetään .contains(). Palauttaa arvon boolean.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; boolean containsLatte = order.contains("Latte"); System.out.println(containsLatte); } }

.contains() käy läpi koko merkkijonon ja tarkistaa, esiintyykö "Latte" missä tahansa sen sisällä. Koska esiintyy, tulos on true.

isEmpty()

Jos haluat tarkistaa, onko merkkijonossa lainkaan sisältöä, käytä .isEmpty(). Se palauttaa arvon true, jos merkkijono ei sisällä yhtään merkkiä, ja false muussa tapauksessa.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String customerNote = ""; boolean emptyNote = customerNote.isEmpty(); System.out.println(emptyNote); } }

customerNote on tyhjä merkkijono ilman merkkejä, joten .isEmpty() palauttaa true.

replace()

Kun haluat korvata osan merkkijonosta ilman, että kirjoitat sitä kokonaan uudelleen, käytä .replace(). Tämä metodi etsii tietyn tekstin ja korvaa sen uudella. Palauttaa uuden String-olion.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String order = "Large Latte with oat milk"; String updatedMessage = order.replace("Latte", "coffee with milk"); System.out.println(updatedMessage); } }

.replace() etsii kaikki "Latte"-esiintymät order-merkkijonosta ja korvaa ne "coffee with milk" -tekstillä, jolloin tuloksena on "Large coffee with milk with oat milk".

charAt() ja indeksointi

Yksittäisen merkin hakemiseen tietystä kohdasta merkkijonossa käytetään .charAt()-metodia. Se palauttaa char-tyyppisen arvon.

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { String customerName = "Daniel"; char firstLetter = customerName.charAt(0); System.out.println(firstLetter); } }

.charAt(0) hakee sijainnin 0, joka on ensimmäinen merkki 'D', ja tallentaa sen char-muuttujaan firstLetter.

question mark

Mitä .length()-metodi palauttaa Javassa?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 2

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 4. Luku 2
some-alt