У овом упутству ћемо научити о Јава стринговима, како их креирати и разним методама Стринга уз помоћ примера.
У Јави је низ низ знакова. На пример, „здраво“ је низ који садржи низ знакова „х“, „е“, „л“, „л“ и „о“.
Двоструке наводнике користимо за представљање низа у Јави. На пример,
// create a string String type = "Java programming";
Овде смо креирали променљиву низа под називом типе. Променљива се иницијализује низом Java Programming
.
Напомена : Жице у Јави нису примитивни типови (као int
, char
итд). Уместо тога, сви низови су објекти унапред дефинисане класе са именом String
.
Све променљиве низа су инстанце String
класе.
Пример: Направите низ у Јави
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 ) )
У горњем примеру створили смо три низа са именом први, други и трећи. Овде директно стварамо низове попут примитивних типова.
Међутим, постоји још један начин стварања Јава низова (помоћу new
кључне речи). О томе ћемо сазнати касније у овом водичу.
Јава Стринг Операције
Јава Стринг пружа различите методе за извођење различитих операција на низовима. Размотрићемо неке од најчешће коришћених операција са низовима.
1. Набавите дужину низа
Да бисмо пронашли дужину низа, користимо length()
методу низа. На пример,
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); ) )
Оутпут
Низ: Здраво! Дужина света: 12
У горњем примеру, length()
метода израчунава укупан број знакова у низу и враћа га. Да бисте сазнали више, посетите Јава Стринг ленгтх ().
2. Спојите две жице
Помоћу concat()
методе можемо придружити две низове у Јави . На пример,
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); ) )
Оутпут
Први низ: Јава Други низ: Програмирање Спојени низ: Јава Програмирање
У горњем примеру смо креирали два низа са именом први и други. Обратите пажњу на изјаву,
String joinedString = first.concat(second);
Овде concat()
метода спаја прво и друго и додељује је променљивој јоинСтринг.
Такође можемо придружити две низове користећи +
оператор у Јави. Да бисте сазнали више, посетите Јава Стринг цонцат ().
3. Упоредите две жице
У Јави помоћу equals()
методе можемо извршити упоређивање два низа . На пример,
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); ) )
Оутпут
Низови први и други су једнаки: тачни Струне први и трећи су једнаки: нетачни
У горњем примеру створили смо 3 низа са именом први, други и трећи. Овде користимо equal()
методу да бисмо проверили да ли је један низ једнак другом.
Тхе equals()
метода проверава садржај жица док их пореде. Да бисте сазнали више, посетите Јава Стринг екуалс ().
Напомена : Такође можемо упоредити два низа користећи ==
оператор у Јави. Међутим, овај приступ се разликује од equals()
методе. Да бисте сазнали више, посетите Јава Стринг == вс екуалс ().
Методе Јава низа
Поред горе поменутих, у Јави постоје и различити низ метода. Ево неких од ових метода:
Методе | Опис |
---|---|
подниз () | враћа подниз низа |
заменити() | замењује наведени стари знак наведеним новим знаком |
цхарАт () | враћа знак присутан на наведеној локацији |
гетБитес () | претвара низ у низ бајтова |
индекс() | враћа положај наведеног знака у низу |
у поређењу са() | упоређује две низове у редоследу речника |
трим () | уклања све водеће и пратеће размаке |
формат () | враћа форматирани низ |
разделити() | прекида низ у низ низова |
тоЛоверЦасе () | претвара низ у мала слова |
тоУпперЦасе () | претвара низ у велика слова |
Вредност() | враћа представљање низа наведеног аргумента |
тоЦхарАрраи () | претвара низ у char низ |
Есцапе карактер у Јава Стрингс
Есцапе знак се користи за бекство из неких знакова присутних унутар низа.
Претпоставимо да треба да уврстимо двоструке наводнике унутар низа.
// include double quote String example = "This is the "String" class";
Будући да су низови представљени двоструким наводницима , компајлер ће „Ово је“ третирати као низ. Стога ће горњи код изазвати грешку.
Да бисмо решили овај проблем, користимо излазни знак у Јави. На пример,
// use the escape character String example = "This is the "String " class.";
Сада есцапе знакови кажу компајлеру да избегне двоструке наводнике и прочита читав текст.
Јава низови су непроменљиви
У Јави су низови непроменљиви . То значи да, једном када створимо низ, не можемо га променити.
Да бисте га дубље разумели, размотрите пример:
// create a string String example = "Hello! ";
Овде смо креирали променљиву низа названу екампле. У променљивој се налази низ „Здраво!“.
Сада претпоставимо да желимо да променимо низ.
// add another string "World" // to the previous tring example example = example.concat(" World");
Овде користимо concat()
методу за додавање другог низа Ворлд претходном низу.
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,
- JVM takes the first string "Hello! "
- creates a new string by adding "World" to the first string
- assign the new string "Hello! World" to the example variable
- 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.
- Ако низ већ постоји , нови низ се не креира. Уместо тога, нова референца упућује на постојећи низ.
- Ако низ не постоји , нови низ се креира.
Међутим, током креирања низова помоћу нове кључне речи , вредност низа није директно наведена. Отуда се нови низ ствара све време.