辨别字符串
1、判断用户名是否正确
本实例调用了String类的equals()方法来判断两个字符串内容是否相同,这个方法是从Object类中继承的,在Java语言中,默认所有类都是Object类的子类,也就是说只要是对象,都会重写或直接使用Object类的equals()方法,String类就重写了这个方法实现判断字符串内容是否相同。该方法的声明如下:
public boolean equals(Object anObject)
参数说明:
Œ anObject:与当前字符串进行比较的对象。
2、用户名排序
用户名是以字符串保存的,无论在数据库还是在数据集合中。所以本实例使用了字符串的compareToIgnoreCase()方法实现字符串的对比,下面介绍本实例使用的关键方法。
(1)compareTo
该方法将按字典顺序比较两个字符串。该比较基于字符串中各个字符的 Unicode 值。如果按字典顺序此 String 对象位于参数字符串之前,则比较结果为一个负整数。如果按字典顺序此 String 对象位于参数字符串之后,则比较结果为一个正整数。如果这两个字符串相等,则结果为 0;compareTo 只在方法 equals(Object) 返回 true 时才返回 0。该方法的声明如下:
public int compareTo(String anotherString)
Œ anotherString:要比较的String字符串对象。
(2)compareToIgnoreCase
同上一个方法执行的功能相同,该个方法也用于对比两个字符串,但是不在严格区分字母的大小写。方法的声明如下:
public int compareToIgnoreCase(String str)
Œ str:要比较的String字符串对象。
3、判断网页请求与FTP请求
实例通过调用String类的startWith()方法判断字符串的前缀,根据前缀来辨别请求的类型,该方法的声明如下:
public boolean startsWith(String prefix)
该方法将判断字符串是否以指定的前缀开始。
Œ prefix:字符串前缀
4、判断文件类型
本实例使用了String字符串类的endWith()方法来判断字符串结尾的后缀。对于文件来说,结尾的后缀是文件扩展名,通过这个扩展名就可以判断文件类型,所以endWith()方法最适合不过。该方法的声明如下:
public boolean endsWith(String suffix)
判断字符串是否以指定的后缀结尾。
Œ suffix:后缀字符串。
5、判断字符串是否为数字
本实例使用了Apache提供的lang包中的NumberUtils类实现数字判断,该类的全路径为“org.apache.commons.lang.math.NumberUtils”,这个类中的isNumber()方法可以接收字符串参数,然后对字符串进行解析,如果字符串不能转换为数字格式,则返回false值。该方法的声明如下:
public static boolean isNumber(String str)
Œ str:字符串,方法将对该字符串进行判断,如果是有数字组成则返回true,如果无法转换为数字,则返回false。
6、验证IP地址的有效性
本实例的关键点在于IP地址格式与数字范围的验证,用户在输入IP地址时,程序可以获取的只有字符串类型,所以本实例利用字符串的灵活性与正则表达式搭配进行IP格式与范围的验证。下面介绍本实例使用的方法:
public boolean matches(String regex)
该方法是String字符串类的方法,用于判断字符串与指定的正则表达式是否匹配。
Œ regex:用来匹配此字符串的正则表达式。