„Java“ eilučių manipuliavimas: funkcijos ir metodai su PAVYZDŽIU

Kas yra stygos?

Styga tiesiogine prasme yra simbolių serija. Ei, ar sakėte simbolius, ar tai nėra primityvus „Java“ duomenų tipas. Taip, taigi technine prasme pagrindinė „Java“ eilutė iš esmės yra simbolių masyvas.

Taigi mano aukščiau pateiktą „ ROSE “ eilutę galima pavaizduoti taip:

Šioje pamokoje sužinosite

  • Kas yra stygos?
  • Kodėl naudoti Stygos?
  • Styginių sintaksės pavyzdžiai
  • Styginių sujungimas
  • Svarbūs „Java“ eilutės metodai

Kodėl naudoti Stygos?

Viena iš pagrindinių šiuolaikinio informatikos funkcijų yra žmogaus kalbos apdorojimas.

Panašiai kaip skaičiai yra svarbūs matematikai, kalbos simboliai yra svarbūs reikšmei ir sprendimų priėmimui. Nors kompiuterių vartotojai to gali ir nematyti, kompiuteriai fone taip tiksliai ir tiksliai apdoroja kalbą kaip skaičiuoklė. Pagalbos dialogo languose pateikiamos instrukcijos. Meniu suteikia pasirinkimą. Duomenų ekranuose rodomos būsenos, klaidos ir kalbos pokyčiai realiuoju laiku.

Kaip „Java“ programuotojas, vienas iš pagrindinių kalbos saugojimo ir apdorojimo įrankių bus „String“ klasė.

Styginių sintaksės pavyzdžiai

Dabar pereikime prie sintaksės, galų gale, mes turime tai parašyti „Java“ kodu, ar ne.

Stygos yra simbolių masyvas, vaizduojamas kaip:

//String is an array of characterschar[] arrSample = {'R', 'O', 'S', 'E'};String strSample_1 = new String (arrSample);

Techniniu požiūriu, eilutė yra apibrėžta taip aukščiau pateiktame pavyzdyje:

= new (argument);

Dabar mes visada negalime rašyti savo eilučių kaip masyvų; taigi „Java“ eilutę galime apibrėžti taip:

//Representation of StringString strSample_2 = "ROSE";

Techniniu požiūriu, aukščiau pateikiama:

= ;

Styginių klasė "Java" išplečia savo objektų klasė.

Styginių sujungimas:

Sujungimas yra dviejų ar daugiau stygų sujungimas.

Pažvelkite į žemiau pateiktą paveikslėlį-

Mes turime dvi stygas str1 = „Rokas“ ir str2 = „Žvaigždė“

Jei susumuosime šias dvi eilutes, turėtume rezultatą kaip str3 = „RockStar“.

Patikrinkite toliau pateiktą kodo fragmentą ir jame paaiškinami du būdai, kaip atlikti eilutę.

Pirmasis - „ Strat “ klasės „ concat “ metodas, antrasis - aritmetinis „+“ operatorius. Abiejų rezultatų rezultatas yra tas pats

viešoji klasė „Sample_String“public static void main (String [] argumentuoja) {// Styginių sujungimasStygos str1 = "Rokas";Stygos str2 = "Žvaigždė";// 1 metodas: naudojant concatString str3 = str1.concat (str2);System.out.println (str3);// 2 metodas: „+“ operatoriaus naudojimasString str4 = str1 + str2;System.out.println (str4);}}

Svarbūs „Java“ eilutės metodai:

Užduokime „Java String“ klasei keletą klausimų ir pažiūrėkime, ar ji gali į juos atsakyti;)

Styginių „ilgio“ metodas

Kaip jūs nustatysite pateiktos stygos ilgį? Pateikiau metodą, vadinamą „ilgiu“. Naudokite jį prieš eilutę, kurios reikia norint rasti ilgį.

viešoji klasė „Sample_String“public static void main (String [] args) {// Mūsų pavyzdinė šio vadovo eilutėString str_Sample = "RockStar";// Stygos ilgisSystem.out.println ("Stygos ilgis: + str_Sample.length ());}}

išvestis:

Length of String: 8

Stygos „indexOf“ metodas

Jei žinau ilgį, kaip galėčiau sužinoti, kuris veikėjas yra kokioje pozicijoje? Trumpai tariant, kaip aš rasiu personažo rodyklę?

Atsakėte sau, bičiuli, yra „indexOf“ metodas, kuris padės nustatyti konkretaus jūsų nurodyto simbolio vietą.

viešoji klasė „Sample_String“public static void main (String [] args) {// Simbolis pozicijojeString str_Sample = "RockStar";System.out.println ("Simbolis 5 pozicijoje: + str_Sample.charAt (5));// Nurodyto simbolio rodyklėSystem.out.println ("Simbolio 'S' rodyklė: + str_Sample.indexOf ('S'));}}

Išvestis:

Character at position 5: tIndex of character 'S': 4

Styginių „charAt“ metodas

Panašiai kaip aukščiau pateiktame klausime, atsižvelgiant į rodyklę, kaip man žinoti veikėją toje vietoje?

Vėl paprastas !! Naudokite „charAt“ metodą ir pateikite indeksą, kurio simbolį turite rasti.

viešoji klasė „Sample_String“public static void main (String [] args) {// Simbolis pozicijojeString str_Sample = "RockStar";System.out.println ("Simbolis 5 pozicijoje: + str_Sample.charAt (5));}}

Išvestis:

Character at position 5: t

Eilutės „Palyginti“ metodas

Ar noriu patikrinti, ar kažkokiu metodu sukurta eilutė yra lygi tam, ką noriu patikrinti? Kaip palyginti dvi stygas?

Naudokite metodą „palygintiTo“ ir nurodykite norimą palyginti eilutę.

Jei nenorite, kad rezultatas būtų skiriamas didžiosiomis ir mažosiomis raidėmis, naudokite „CompareToIgnoreCase“.

Rezultato reikšmė bus 0, jei argumento eilutė lygi šiai eilutei; vertė yra mažesnė nei 0, jei ši eilutė yra leksikografiškai mažesnė už eilutės argumentą; ir didesnė nei 0 reikšmė, jei ši eilutė yra leksikografiškai didesnė už eilutės argumentą.

viešoji klasė „Sample_String“public static void main (String [] args) {// Palyginti su StringString str_Sample = "RockStar";System.out.println ("Palyginti su 'ROCKSTAR': + str_Sample.compareTo ("rockstar"));// Palyginti su - Ignoruoti atvejįSystem.out.println ("Palyginti su" ROCKSTAR "- neatsižvelgta į atvejį: + str_Sample.compareToIgnoreCase ("ROCKSTAR"));}}

Išvestis:

Compare To 'ROCKSTAR': -32Compare To 'ROCKSTAR' - Case Ignored: 0

Eilutės „Turi“ metodas

Iš dalies žinau, ką eilutė turėjo būti, kaip patvirtinti, ar eilutėje yra mano nurodytų simbolių seka?

Naudokite metodą „yra“ ir nurodykite simbolius, kuriuos turite patikrinti.

Grąžina teisingą tik tada, jei šioje eilutėje yra nurodyta char reikšmių seka.
viešoji klasė „Sample_String“public static void main (String [] args) {// Patikrinkite, ar eilutėje yra sekaString str_Sample = "RockStar";System.out.println ("Yra seka 'tar': + str_Sample.contains ("tar"));}}

Išvestis:

Contains sequence 'tar': true

Eilutė „baigiasi“ metodu

Kaip patvirtinti, ar eilutė baigiasi konkrečia priesaga? Vėlgi jūs į tai atsakėte. Naudokite metodą „endWith“ ir argumentuose nurodykite priesagą.

Grąžina teisingą, jei argumento pavaizduota simbolių seka yra simbolių sekos, kurią vaizduoja šis objektas, galūnė.
viešoji klasė „Sample_String“public static void main (String [] args) {// Patikrinkite, ar baigiasi tam tikra sekaString str_Sample = "RockStar";System.out.println ("Baigiasi su simboliu 'r': + str_Sample.endsWith ("r"));}}

Išvestis:

EndsWith character 'r': true

Eilutės „ReplAll“ ir „ReplaceFirst“ metodas

Noriu pakeisti savo stygas keliose vietose ir pakeisti kelias stygos dalis?

„Java“ eilutė Pakeiskite, pakeiskite visus ir pakeiskite pirmuosius metodus. Argumentuose galite nurodyti eilutės dalį, kurią norite pakeisti, ir pakaitinę eilutę.

viešoji klasė „Sample_String“public static void main (String [] args) {// Roką pakeiskite žodžiu DukeString str_Sample = "RockStar";System.out.println ("Pakeiskite" Rock "į" Duke ": + str_Sample.replace ("Rock", "Duke"));}}

Išvestis:

Replace 'Rock' with 'Duke': DukeStar

Styginių Java „tolowercase“ ir „Java“ toperpercase “metodas

Noriu, kad visa mano eilutė būtų rodoma mažosiomis arba didžiosiomis raidėmis?

Tiesiog naudokite „toLowercase ()“ arba „ToUpperCase ()“ metodus prieš eilutes, kurias reikia konvertuoti.

viešoji klasė „Sample_String“public static void main (String [] args) {// Konvertuoti į LowerCaseString str_Sample = "RockStar";System.out.println ("Konvertuoti į LowerCase: + str_Sample.toLowerCase ());// Konvertuoti į „UpperCase“System.out.println ("Konvertuoti į„ UpperCase “: + str_Sample.toUpperCase ());}}

Išvestis:

Convert to LowerCase: rockstarConvert to UpperCase: ROCKSTAR

Svarbūs pastabos:

  • Stygos yra finalinė klasė ; ty sukurta vertė negali būti pakeista. Taigi styginiai objektai vadinami nekintamais.
  • „Java“ virtuali mašina (JVM) sukuria atminties vietą ypač eilutėms, vadinamoms „ String Constant Pool“ . Štai kodėl eilutę galima inicijuoti be „naujo“ raktinio žodžio.
  • Styginių klasė patenka į java.lang . Styginių hierarchija . Tačiau šios klasės importuoti nereikia. „Java“ platforma juos teikia automatiškai.
  • Eilutės nuoroda gali būti nepaisoma, tačiau turinys neištrinamas ; ty jei

Stygos h1 = "labas";

h1 = "labas" + "pasaulis";

tada „labas“ eilutė neištrinama. Jis tiesiog pameta rankeną.

  • Toje pačioje eilutėje gali būti naudojamos kelios nuorodos, tačiau jos bus toje pačioje vietoje ; ty jei

Stygos h1 = "labas";

Eilutė h2 = "labas";

Eilutė h3 = "labas";

tada atmintyje sukuriamas tik vienas styginių „labas“ telkinys su 3 nuorodomis - h1, h2, h3

  • Jei skaičius cituojamas „“, tai tampa eilute , o ne skaičiumi. Tai reiškia, jei

Eilutė S1 = "Skaičius yra: + "123" + "456";

Sistema. out .println (S1);

tada jis atspausdins: Skaičius yra: 123456

Jei inicijavimas yra toks:

Eilutė S1 = "Skaičius yra: + (123 + 456);

Sistema. out .println (S1);

tada jis atspausdins: Skaičius yra: 579 Tai viskas iki stygų!

Įdomios straipsniai...