Java程序常用算法 对用户名进行比较排序

文章标签: java
2015-1-6 19:17:57     11 人阅读    

【实例描述】

       用户名也就是登录系统、网站等使用的名称,也称为登 录名称。一般情况下,用户名都要求使用英文、数字或符号 组成,如 lester_西楼听雨。这些用户名一般是根据用户注册 的先后来进行排序的,这样不利于管理员的查找,本实例将实现对用户名字符串的排序。实例的运行效果如图 4.17 所示。 图 4.17  对用户名进行比较排序


【实现过程】
         在 Eclipse 中新建项目 UserNameSort,并在其中创建一个 UserNameSort.java 文件。在该类 的主方法中创建 compareTo()方法对用户名进行比较排序,并将结果以字符串数组的顺序进行 输出。核心代码如下所示:

class userName implements Comparable
{
public String sName;
public userName(String sName)
{
this.sName=sName;
}
public int compareTo(Object o) // 重写 compareTo 方法
{




userName
userName tempuser=(userName)o; String temp=tempuser.sName;
return this.sName.compareTo(temp); // 按 字 符 串 sName 的 顺 序 排 列

}
public String toString()
{
return this.sName;
}
}

public class UserNameSort {
public  static void main(String args[])
{
System.out.println("排序后的用户名顺序为:");
TreeSet ts=new TreeSet(); // 插入 userName 对象时,会自动调用 compareTo 方法
ts.add(new userName("Lester")); ts.add(new userName("Jimmy")); ts.add(new userName("Lily")); System.out.println(ts);
}
}

【代码解析】
         按字典顺序比较两个字符串(compareTo),该比较方法基于字符串中各个字符的 Unicode 值。按字典顺序将此 String 对象表示的字符序列与参数字符串所表示的字符序列进行比较。具 体比较方法如图 4.18 所示。

【知识扩展】
         字符串是否相等也是使用较频繁的一组操作。字符串对象调用 String 类中的 equals()方法, 比较当前字符串对象是否与参数指定的字符串相同。equalsIgnoreCase()方法与 equals()方法的作 用与用法基本相同,只是 equalsIgnoreCase()方法在运用时会忽略大小写。


原文地址:http://www.itmmd.com/201501/448.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

jQuery教程(10)-DOM树操作之内容setter和getter方法   上一篇
下一篇  jQuery教程(9)-DOM树操作之复制元素

精彩回复
发表评论
姓名:       

《程序员app》专门为程序员量身定做!