2013-12-05 3 views
-1

Извините за глупый вопрос, но я никогда не понимал, как определить значение строки. Например, что больше, «вал» или «крик» и что? Какие компоненты следует искать при сравнении?Как определить значение строки?

+0

Google - отличное место для начала. – redFIVE

+0

Не совсем понятно, что вы пытаетесь сделать. –

+0

В каком аспекте вы хотите сравнить? Вы имеете в виду по размеру или контенту? – Smit

ответ

0

Обычно его алфавитный порядок для строки сравнениях

1

Строка, на самом деле не есть то, что вы называете Значение. String инвентарь Comparable. JavaDoc for String.compareTo говорит:

Сравнивает две строки лексикографически. Сравнение основано на значении Unicode каждого символа в строках. Последовательность символов, представленная этим объектом String, сравнивается лексикографически с последовательностью символов, представленной строкой аргумента.

1

См String.compareTo:

Сравнивает две строки лексикографически .. возвращает значение меньше 0, если эта строка лексикографически меньше аргумента строки; и значение больше 0, если эта строка лексикографически больше аргумента строки.

Где lexicographically означает, что «как нашел словарь».

Таким образом, с помощью compareTo:

"shaft".compareTo("scream") // -> more than 0: "shaft comes after scream" 
"scream".compareTo("shaft") // -> less than 0: "scream comes before shaft" 
+0

Вот и все! Большое вам спасибо – user201535

+0

@ user201535 Добро пожаловать. Поскольку Java не разрешает перегрузку оператора при работе с типами объектов (например, String), любые методы сравнения (например, 'equals',' compareTo') и информация о них будут найдены в соответствующей документации класса. – user2864740

0

Сравнить посимвольно.

s h a r p  //sharp is greater. first non matching character is compared. 

= = =^

s h a f t 
Смежные вопросы