Отваря главното меню

Промени

205 bytes added ,  преди 6 години
м
→‎Символни низове в Java: - корекции във форматирането
==Символни низове в Java==
 
В езика за програмиране [[Java]], символните низове са [[Обект_(програмиране)|обекти]].
В Java [[Клас_(програмиране)|класът]] <code>String</code> се използва за създаване и обработка на символни низове. Последователностите от символи, записани в [[Променлива_(програмиране)|променлива]] от класа, са [[Неизменим_обект|неизменими]] (immutable). Веднъж записано съдържанието на едно място, то не може да бъде променяно директно.
 
=== Създаване на символни низове ===
В този случай, <code>"Hello, world!"</code> е низов [[литерал]] – поредица от символи в кода, които са заградени с двойни кавички.
За отпечатване на съобщение в кавички е необходимо да се използва escape символ – обратна наклонена черта (\).
<source lang="java">String quotedString = “She"She said \”Hello"Hello, World!\""; //She said “Hello"Hello, world!" </source>
Може да се създаде <code>String</code> обект като се използва ключовата дума <code>new</code> и [[Конструктор_(обектно-ореинтирано_програмиране)|конструктор]]. Класът <code>String</code> съдържа конструктори, които позволяват да се инициализира стойността на низа, чрез използване на различни източници, като [[Масив_(програмиране)|масив]] от символи:
<source lang="java">
char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.' };
</source>
=== Долепване на низове (конкатенция) ===
Класът <code>String</code> включва [[Метод_(програмиране)|метод]] за долепване на два низа:
<source lang="java">
String greet = “Hello"Hello, ";
String name = “world"world!";
String result = greet.concat(name); //Hello, world!
</source>
Резултата от това връща символен низ, който представлява <code>String greet</code> и долепен след него <code>String name</code>. Може да се използва метода <code>concat()</code> с низов литерал:
<source lang="java">
“Hello"Hello, ".concat(“world”"world"); //Hello, world!
</source>
Често за долепване на низове се използва оператора +, при който резултата отново е същият както и при горните два начина:
* <code>replace(int start, int end, String str)</code> – замества записания низ между началната и крайната позиция със стойността на променливата <code>str</code>
* <code>StringBuilder reverse()</code> – записва символите в нова променлива в обратен ред
* <code>toString()</code> - връща записаната информация в обекта на <code>StringBuilder</code> като резултат от тип <code>String</code>, който може да се запише в променлива на <code>String</code>
 
=== Сравняване на символни низове ===
* <code>int compareTo(String anotherString)</code> - сравнява два стринга лексикографски. За да бъдат два стринга еднакви, то те трябва да имат еднакъв брой символи и да бъдат подредени в един и същ ред. Този метод връща цяло положително, отрицателно число или 0 в зависимост от лексикографската наредба.
* <code>int compareToIgnoreCase(String str)</code> – този метод сравнява два стринга лексикографкски, без да взима предвид дали са малки или големи буквите.
* <code>boolean equals(Object anObject)</code> - връща резултат <code>true</code> ако стойностите на двата низа са еднакви и <code>false</code> ако са различни
* <code>boolean equalsIgnoreCase(String anotherString)</code> - сравнява двата низа дали са еднакви, без да взима предвид дали буквите са малки или големи.
 
 
==Източници==
14

редакции