比较两个单词(字符串)

Ade*_*e A 4 java string string-comparison

这段代码是什么意思?

if( item.compareTo(root.element) < 0 ){

   }
Run Code Online (Sandbox Code Playgroud)

我读到了:

"按字典顺序比较两个字符串.返回一个整数,指示此字符串是否大于(结果> 0),等于(结果是= 0)或小于(结果是<0)参数."

但我不明白.有人可以用一个例子解释一下吗?

Ósc*_*pez 5

看一下Comparable界面的文档,它首先定义了compareTo()方法.此接口的实现String遵循相同的约定:

将此对象与指定的对象进行比较以获得顺序.返回负整数,零或正整数,因为此对象小于,等于或大于指定对象

这意味着:如果当前字符串小于作为参数接收的字符串(在字典顺序下),则返回负整数值.如果当前字符串大于作为参数接收的字符串,则返回正整数值.否则,字符串相等并0返回.

  • 使用["词典顺序"](http://en.wikipedia.org/wiki/Lexicographical_order),即:如果字符串"a"出现在字典中的其他字符串"b"之前,则表示"a"小于"b". (2认同)
  • @AdegokeA"它如何确定哪个字符串更大?" Java使用其在[Unicode表](http://en.wikipedia.org/wiki/List_of_Unicode_characters)中的位置来比较字符串字符.排序后你会得到像这样的东西:12,3,Aa,BB,a,bb,ŇŇ,Ňń` (2认同)