Niz Java (s primeri)

V tej vadnici bomo s pomočjo primerov spoznali Java Strings, kako jih ustvariti in različne metode Stringa.

V Javi je niz zaporedje znakov. Na primer, "hello" je niz, ki vsebuje zaporedje znakov 'h', 'e', ​​'l', 'l' in 'o'.

Za predstavitev niza v Javi uporabljamo dvojne narekovaje . Na primer

 // create a string String type = "Java programming";

Tu smo ustvarili nizovno spremenljivko z imenom type. Spremenljivka se inicializira z nizom Java Programming.

Opomba : Nizi v Javi niso primitivni tipi (kot int, charitd). Namesto tega so vsi nizi predmet vnaprej določenega razreda z imenom String.

Vse spremenljivke niza so primerki Stringrazreda.

Primer: Ustvari niz v Javi

 class Main ( public static void main(String() args) ( // create strings String first = "Java"; String second = "Python"; String third = "JavaScript"; // print strings System.out.println(first); // print Java System.out.println(second); // print Python System.out.println(third); // print JavaScript ) )

V zgornjem primeru smo ustvarili tri nize, imenovane prvi, drugi in tretji. Tu neposredno ustvarjamo nize, kot so primitivni tipi.

Vendar obstaja še en način ustvarjanja nizov Java (z uporabo newključne besede). O tem bomo izvedeli kasneje v tej vadnici.

Nizovske operacije Java

Java String ponuja različne metode za izvajanje različnih operacij v nizih. Preučili bomo nekaj najpogosteje uporabljenih nizovnih operacij.

1. Pridobite dolžino niza

Za iskanje dolžine niza uporabimo length()metodo String. Na primer

 class Main ( public static void main(String() args) ( // create a string String greet = "Hello! World"; System.out.println("String: " + greet); // get the length of greet int length = greet.length(); System.out.println("Length: " + length); ) )

Izhod

String: Pozdravljeni! Dolžina sveta: 12

V zgornjem primeru length()metoda izračuna skupno število znakov v nizu in ga vrne. Če želite izvedeti več, obiščite Java String length ().

2. Združite dva niza

Z concat()metodo lahko združimo dva niza v Javi . Na primer

 class Main ( public static void main(String() args) ( // create first string String first = "Java "; System.out.println("First String: " + first); // create second String second = "Programming"; System.out.println("Second String: " + second); // join two strings String joinedString = first.concat(second); System.out.println("Joined String: " + joinedString); ) )

Izhod

 Prvi niz: Java Drugi niz: Programiranje Združeni niz: Programiranje Java

V zgornjem primeru smo ustvarili dva niza, imenovana prvi in ​​drugi. Upoštevajte izjavo,

 String joinedString = first.concat(second);

Tu concat()metoda združi prvo in drugo ter jo dodeli spremenljivki joinString.

Prav tako lahko združimo dva niza z uporabo +operaterja v Javi. Če želite izvedeti več, obiščite Java String concat ().

3. Primerjaj dva niza

V Javi lahko s pomočjo equals()metode primerjamo dva niza . Na primer

 class Main ( public static void main(String() args) ( // create 3 strings String first = "java programming"; String second = "java programming"; String third = "python programming"; // compare first and second strings boolean result1 = first.equals(second); System.out.println("Strings first and second are equal: " + result1); // compare first and third strings boolean result2 = first.equals(third); System.out.println("Strings first and third are equal: " + result2); ) )

Izhod

 Strune prvi in ​​drugi so enake: true Strune prvi in ​​tretji so enake: false

V zgornjem primeru smo ustvarili 3 nize, imenovane prvi, drugi in tretji. Tu uporabljamo equal()metodo za preverjanje, ali je en niz enak drugemu.

V equals()samem metoda vsebina strun, medtem ko jih primerjamo. Če želite izvedeti več, obiščite Java String equals ().

Opomba : Tudi dva niza lahko primerjamo z uporabo ==operaterja v Javi. Vendar se ta pristop razlikuje od equals()metode. Če želite izvedeti več, obiščite Java String == vs equals ().

Metode Java Stringa

Poleg zgoraj omenjenih so v Javi prisotne različne metode nizov. Tu je nekaj teh metod:

Metode Opis
podniz () vrne podniz niza
zamenjati() nadomesti navedeni stari znak z navedenim novim znakom
charAt () vrne znak, prisoten na določenem mestu
getBytes () pretvori niz v niz bajtov
indeks() vrne položaj določenega znaka v nizu
compareTo () primerja dva niza v vrstnem redu slovarja
obrezati () odstrani morebitne vodilne in zaključne presledke
format () vrne formatirani niz
razdeli () razbije niz v niz nizov
toLowerCase () pretvori niz v male črke
toUpperCase () pretvori niz v velike črke
valueOf () vrne predstavitev niza določenega argumenta
toCharArray () pretvori niz v charmatriko

Escape znak v Java Strings

Ubežni znak se uporablja za pobeg nekaterih znakov, ki so znotraj niza.

Recimo, da moramo v niz vključiti dvojne narekovaje.

 // include double quote String example = "This is the "String" class";

Since strings are represented by double quotes, the compiler will treat "This is the " as the string. Hence, the above code will cause an error.

To solve this issue, we use the escape character in Java. For example,

 // use the escape character String example = "This is the "String " class.";

Now escape characters tell the compiler to escape double quotes and read the whole text.

Java Strings are Immutable

In Java, strings are immutable. This means, once we create a string, we cannot change that string.

To understand it more deeply, consider an example:

 // create a string String example = "Hello! ";

Here, we have created a string variable named example. The variable holds the string "Hello! ".

Now suppose we want to change the string.

 // add another string "World" // to the previous tring example example = example.concat(" World");

Here, we are using the concat() method to add another string World to the previous string.

It looks like we are able to change the value of the previous string. However, this is not true.

Let's see what has happened here,

  1. JVM takes the first string "Hello! "
  2. creates a new string by adding "World" to the first string
  3. assign the new string "Hello! World" to the example variable
  4. the first string "Hello! " remains unchanged

Creating strings using the new keyword

So far we have created strings like primitive types in Java.

Since strings in Java are objects, we can create strings using the new keyword as well. For example,

 // create a string using the new keyword String name = new String("Java String");

In the above example, we have created a string name using the new keyword.

Here, when we create a string object, the String() constructor is invoked. To learn more about constructor, visit Java Constructor.

Note: The String class provides various other constructors to create strings. To learn more, visit Java String (official Java documentation).

Example: Create Java Strings using the new keyword

 class Main ( public static void main(String() args) ( // create a string using new String name = new String("Java String"); System.out.println(name); // print Java String ) )

Create String using literals vs new keyword

Now that we know how strings are created using string literals and the new keyword, let's see what is the major difference between them.

In Java, the JVM maintains a string pool to store all of its strings inside the memory. The string pool helps in reusing the strings.

While creating strings using string literals, the value of the string is directly provided. Hence, the compiler first checks the string pool to see if the string already exists.

  • Če niz že obstaja , novi niz ni ustvarjen. Namesto tega nova referenca kaže na obstoječi niz.
  • Če niz ne obstaja , se ustvari nov niz.

Medtem ko ustvarjate nize z novo ključno besedo , vrednost niza ni neposredno navedena. Zato se novi niz ustvarja ves čas.

Zanimive Članki...