Програмування на мові Java Робота з рядками

March 4th, 2009


« Програмування на мові Java Мережеві засоби   |   Програмування на мові Java Типи »

В класі String реалізована група сервісних методів, що є спеціалізованими версіями методу equals. Метод regionMatches використовується для порівняння підрядка в початковому рядку з підрядком в рядку-параметрі. Метод startsWith перевіряє, чи починається даний підрядок фрагментом, переданим методу як параметр. Метод endsWith перевіряє чи співпадає з параметром кінець рядка.

Рівність

Метод equals і оператор == виконують дві абсолютно різних перевірки. Якщо метод equal порівнює символи усередині рядків, то оператор == порівнює дві змінні-посилання на об’єкти і перевіряє, чи указують вони на різні об’єкти або на один і той же.
У черговому нашому прикладі це добре відно-содержімоє двох рядків однаково, але, проте, ето-разлічниє об’єкти, так що equals і == дають різні результати.

class EqualsNotEqualTo {
public static void main(String args[]){
String s1=”Hello”;
String s2=new String(s1);
System.out.println(s1+”equals”+s2+”->”+s1.equals(s2));
System.out.println(s1+”==”+s2+”->”+(s1==s2));
}
}

Ось результат запуску цього прикладу:

C:\> java EqualsNotEqualTo
Hello equals Hello -> true
Hello == Hello -> false

Впорядкування

Часто буває недостатньо просто знати, чи є два рядки ідентичними. Для додатків, в яких потрібне сортування, потрібно знати, який з двох рядків менше іншої. Для відповіді на це питання потрібно скористатися методом compareTo класу String.
Якщо ціле значення, повернене методом, негативно, то рядок, з яким був викликаний метод, менше рядка-параметра, якщо положітельно-больше. Якщо ж метод compareTo повернув значення 0, рядки ідентичні. Нижче приведена програма, в якій виконується бульбашкове сортування масиву рядків, а для порівняння рядків використовується метод compareTo.
Ця програма видає відсортований в алфавітному порядку список рядків.

class SortString {


Tags: , , , , , ,

програмування


Схожі записи

Категория: програмування |

Комментарии