Java. String: методи, примери

Java String или линии в Java са основните носители на текстова информация, така че този клас е популярен и често използван. Пакетът Java.lang има няколко класа за работа с низове - това са StringBuffer и StringBuilder. Те са обявени за окончателни - това предполага, че тези класове не могат да бъдат наследени. За да проверите това, отворете редактора и напишете думата string, след което отидете в самия клас. Тук ще видим, че е окончателно - това означава, че няма наследство.

Методи за създаване на обекти

Можете да създадете обект клас Java String по няколко начина. Една от тях използва ключовата дума new и конструктора на класа. Ако натиснете CTRL + P, ще видите всички тези конструктори. Java String приема низ, масив от char, int, byte, както и класове StringBuffer и StringBuilder. Вторият начин за създаване на обект е директно задаване на референция, съдържаща се в двойни кавички.


Класове StringBuilder, StringBuffer и техните методи

Класовете StringBuilder, StringBuffer, са много сходни помежду си и са предназначени да бъдат близо до класа String. С помощта на методите и конструкторите, обектите от тези класове могат да бъдат трансформирани един в друг и в низ. Също така StringBuilder има конструктори, които вземат низ и поредица от символи, така че низът може да бъде преобразуван в обекти. И в двата случая има метод ToString. Той не принадлежи на класовете StringBuilder и StringBuffer, а клас Object, с който те могат да бъдат доведени до низ. Можете да видите всички методи, ако натиснете CTRL + P. Основната разлика между тези два класа е, че StringBuilder работи по-бързо, но не еthread safe, за разлика от StringBuffer. Безопасността на потока е способността на кода да функционира незабавно в няколко потока без блокиране.


Характеристики на създаването на обект StringBuilder или StringBuffer

Когато създавате обект StringBuilder или StringBuffer, конструкторът по подразбиране автоматично запазва място в паметта под 16 символа. Можете да проверите това, като използвате един от тях, Capacity метод и изведете на конзолата. Резултатът ще бъде размер на буфер от 16 символа. Можете да натиснете отново CTRL + P и да изберете метода Int Capacity. Това означава, че в конструктора можем да определим определен размер на буфера. Има и начин да го инсталирате по-късно. За да направите това в StringBuilder, изберете метода Осигуряване на капацитет. С него можем да определим минималния гарантиран размер на буфера. Ако го промените, например с 20 и след това отново пуснете конзолата, получаваме 34. Всичко това е, че можете да зададете точния минимален гарантиран размер, тоест във всеки случай, той няма да бъде по-малък от 20. Но ако това Класът е в някакъв метод или конструктор на формулата, за която се изчислява допустимата стойност.

Присвояване на линейна стойност на обект

За да присвоите определена стойност на определена стойност на даден низ, е необходимо тази стойност да се запише в конструктора или да се използва един от методите Append. Има много от тях, някои от тези методи могат да приемат булева, а след това да го конвертират в низ и да се компилират, някои вземат символи, масиви, последователност и т.н. работи с един и същ обектне създавайте нов

Разлики между методите String и StringBuilder

Когато работите с низ, ако използвате някои методи, като конкатенация или залепване на обекти, в този случай се създава нов ред. Това може да бъде проверено при извеждане към конзолата. Обикновено класовете StringBuilder и StringBuffer се използват, когато добавянето на низове е много често. Например в цикъл, където има голямо количество информация и винаги има добавяне на редове, по-добре е да ги използвате точно. Това ще ускори работния процес, тъй като StringBuilder прави по-бързо, тук няма постоянно създаване на нов обект.

Метод SetLength

При съставянето на редове (при всяко добавяне) ще бъде създаден нов обект. Ако те са повече от хиляда, тогава ще има много ненужни ресурси, и процесът ще отнеме много време. Също така, в StringBuilder има метод SetLength, където можете да зададете размера на буфера. Например, ако зададете 15 и изведете резултата в конзолата, получаваме номер 20. Този обект, когато се достигне необходимия размер на буфера, автоматично се увеличава според формулата, дадена в този метод. Увеличението може да настъпи до известна степен. Например, в метода Капацитет максималният брой символи в обект ще бъде равен на броя на int.

Методи за въвеждане и изтриване

Следният метод, най-често използван в StringBuilder, е Insert. Тя ви позволява да вмъкнете знак в посочената позиция. Той също има много възможности. Друг популярен метод е премахването на символен низ. За да извършите тази операция, отидете на Изтриване и изберететой е в списъка. Например, можете да използвате подстрока от първоначалния индекс до последния, или да изтриете знака, като използвате неговия индекс.
Най-новият метод на StringBuilder, който ще разглобим, е Recerse или reverse. Използва се за прекъсване на низ. Символите в него ще бъдат изградени в обратен ред. Ако я изпълните и покажете обекта в конзолата, ще получим неговия огледален образ. В този случай продължаваме да работим с един и същ обект, докато новият не се създава. Той просто запазва друга информация сега. StringBuilder има много методи, които са подобни на тези в String. Те работят по същия начин. На практика няма разлика между StringBuffer и StringBuilder, с изключение на поведението на StringBuffer, което е безопасно за нишките. Поради това работи малко по-бавно.

Методи на класовите струни

Да поговорим за методите на класа Java String. Първо ги помислете за обекта srt1 и str2, а след това - статични методи директно към самия клас String. Първият метод, който ще разглобим е CharAt. Той приема индекса и връща символа. В Java редовете се индексират, т.е. под всеки индекс е символ. Например, ако създадете Java обект, тогава "j" ще лежи под индекса "0", "a" под индекса "1", "v" - "2", "a" - "3". Това означава, че ако напишете в метода "0", тогава той връща знак, който е под нулев индекс в този ред. Проверете работата на този метод може да бъде изведен към конзолата и стартирайте програмата. В първия случай ще видим символа "j". Ако промените "0" на "1", ще видим символа "а".

Методът CodepointAt

Следващият метод на Java String, с който се запознаваме, е CodepointAt. Той връща int и приема int-index. CodepointAt връща Unicode символа по даден индекс. Това означава, че ако напишем индекса "1", отново като се позовем на индекса на низ и символа "а", този метод ще ни върне номера в кодировката Unicode, съответстваща на символа "а". Ако стартирате приложение, ще видим номер 97. Например, ако знаем, че индексът "А" съответства на числото 65 в Unicode кодирането. Тогава, при стартиране, където стойността е записана в метода, получаваме 65.

Сравнение на низове в Java String

Друг метод сравнява. Той връща int и приема друга линия. В Java String, линейното сравнение се прави с този метод. Той поема str1 и го сравнява с приетия низ, лексически или лексикографски, като взема предвид регистъра на буквите, тоест, като взема предвид горните и малки букви. Ако съдържанието на редовете е същото, тогава трябва да получим програмата "0", когато процесът бъде изваден. Следователно, ако съдържанието е различно, в отговора ще дойде число, равно на разликата в индексите.

Методи CompareToIgnoreCase и Concat

Следващият метод, който ще разглобим, е compareToIgnoreCase. Тя е подобна на предишната, но не се взема предвид случаят с буквите, т.е. няма значение, главна буква или главна буква. В редактора на код пишем str със стойността на Java и ще направим последното писмо титулно. И като резултат, ние все още получаваме 0. Получаваме различна стойност, ако има някакъв друг характер. Сега нека разгледаме метода за низа Java String - Concat. Той е предназначен да добавя, обединява или обединява две линии. Concatподобно на обичайното добавяне на низове, използвайки символа "+".

Equals и EqualsIgnoreCase

Методът Equals приема друг обект от типа Object. Но тъй като всички наследени класове в нашия имат типа Object, тогава можем да предадем низ. Обратният тип е Equals - boolean метод, т.е. нашата линия се сравнява с друг обект на равенство. Сравнява съдържанието на два обекта. Това означава, че ако преминем стринга str2, ако съдържанието му не е едно с обекта, получаваме отговора на грешката, и ако това е едно истина. Съществува и метод за сравняване на редове без регистър на случаите. Тя се нарича - EqualsIgnoreCase. Прилича на сравнение и работи по подобен начин. Обратният тип тук е булев. В случая на compareTo като резултат, получаваме разлика в знака или 0, ако съдържанието е същото.

Методи HashCode и IndexOf

Следният метод е HashCode. Тя връща хеша на нашия обект. Тя е във всеки обект и е число, по-точно, малко поредица с фиксирана дължина. Можете да го използвате, като използвате този метод. Разгледайте метода IndexOf. Всъщност има няколко, но ще разгледаме само едно. Той приема променливата ch - променливата в Unicode кодирането. Това означава, че ако тази променлива съвпада с символ в ред, тогава индексът на този символ се връща, ако не, тогава "-1". Ако нашият номер в Unicode кодирането е в този ред, тогава индексът на този символ се връща. Ако няма такъв знак, се връща "-1".

Методи IsEmpty, Length, Split, Substring

Сега ще анализираме метода IsEmpty. Тя връща true, ако дължината на низа е 0, т.е. тя е празна. Следващият метод е Дължина. Той е отговорен за броя на символите на ред, т.е. той се връщадължина на java низ Пропуските също са символи. Методът Сплит взема разделител и връща масив от редове. Можем да използваме текст, поставен в двойни кавички, или низ. Когато даден метод срещне интервал, той разделя линията и разделя частта на масив. В резултат на това получаваме масив от редове. Можем да го сложим в комета, а Сплит ще го раздели на парчета. Нека се обърнем към метода Substring. Той извлича от реда на подстрани с дължината на endindex-beginindex, започвайки от последната позиция. Един пример за Java String за този метод е да напишете низ и да зададете два индекса за него, след това редът ще бъде изрязан и неговото начало ще бъде първият индекс, а краят е вторият. Част от str1 ще се покаже в конзолата. За да носите низ в Java String, добавете "n".

Методи ToCharArray, ToLowerCase, ToUpperCase, Trim

Методът ToCharArray връща масив от символи, т.е. низът е написан на ръка. Ако декларирате char, и след това поставите определен елемент в метода, всеки символ ще бъде в символната матрица. След това на конзолата се показва всеки елемент от масива. Друг метод е ToLowerCase. Превежда низ в малки букви. В ToUpperCase работи в обратния начин - той прави всички букви в низ голям. Много често използван метод е Trim. Той прекъсва пространствата в началото и в края на линията. Има много статични методи на самия клас, защото те приемат различни типове и масиви. Най-често използваната стойност е ValueOf. Тя преобразува променлива от даден тип в низ.

Свързани публикации