JAVA常用工具类 联系客服

发布时间 : 星期六 文章JAVA常用工具类更新完毕开始阅读

0表示本串= anotherString; 正数表示本串> anotherString;

3.7. 取子字符串 String substring(int startPos,int endPos)

返回startPos――endPos之间的字符串(不含endPos位置的字符)。 String substring(int startPos) 返回从startPos开始直到串尾的全部字符

3.8. 大小写转换 String toLowerCase() 转换为小写字母 String toUpperCase() 转换为大写字母 3.9. 拷贝 getChars(int StartPos,int endPos,char[] c,int startIndex) 拷贝startPos――endPos之间的字符串(不含endPos位置的字符)到字符数组c 中,从索引startIndex开始存放

getBytes(int StartPos,int endPos,byte[] b,int startIndex) 拷贝startPos――endPos

之间的字符串(不含endPos位置的字符)到字节数组b 中,从索引startIndex 开始存放byte[] getBytes(); 返回byte数组

bye[] getBytes() 使用平台默认字符编码,将当前字符串转换为一个byte数组 3.10. 获得串长度

int length() 返回串长度(字符个数)

3.11. 替换子串 String replace(char oldChar,char newChar) 将本串中全部oldChar字符替换为newChar字符,并返回替换后的字符串

String replaceAll(String oldStr,String newStr)

将本串中全部oldStr串替换为newStr串,并返回替换后的字符串,

当newStr为空串时,可删除oldStr

String replaceAll(String regex, String replacement) 将所有regex用replacement替换,并返回替换后的字符串 String replaceFirst(String regex, String replacement) 将第一个regex用replacement替换,并返回替换后的字符串

3.12. 类型转换 static int Integer.parseInt(String s);//转换为int类型 static long Long.parseInt(String s);//转换为int类型 static double Double.parseInt(String s);//转换为int类型 说明:上述类型的转换如果不成功,将抛出NumberFormatException异常。 3.13. 匹配

boolean matches(String pattern) //pattern为正则表达式。

当字符串与pattern匹配时,返回true 常见的匹配模式:

A. 匹配超链接标记

B. 匹配e-mail ^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+([.][a-z0-9-]+)*$

4. 字符串的连接

用运算符 “+” 进行两个字符串的连接。如: String s1=”sun”;

String s2=”company”;

String s=s1+s2; //此时s内容为:sun company

5. 关于String 的几点说明:

5.1. 由于String的特殊性,所以系统处理这种类型时,内部使用了String 池,

用意提高性能;当用赋值号为一个字符串赋值时,系统首先在String 池 中查找,如果找到,则直接将其引用赋值给目标变量,如果没有找到,则 申请一个新的串,并将其引用赋值给目标变量,同时将这个新串放到String 池中。

5.2. 用”+”连接两个字符串,总是产生一个新的串。 5.3. 如果频繁使用”+”运算符进行字符串链接,则使用StringBuffer 或 StringBuilder 可以大大提高性能。

思考:

0. 设计一个方法,boolean isNumeric(String sNumber)

用以检查输入的字符串是否全由数字字符组成,如是,返回true,否则,返回false.

1. 编写一个方法,使用异或运算,对输入字符串加密,并输出密文。调用同一函数,输入密文,同时输出明文。 2.编写isLike()方法,用以判断字符串是否匹配。 “a*”: 以字符?a?开头的字符串 “*bc*”: 包含字符串?bc?的字符串 “A??”: 以字符?A?开头,且长度为3的字符串 “?A?”: 以字符?A?居其间,且长度为3的字符串 class MyString{ String str; //其它方法或成员定义 //构造函数 public Boolean isLike(String regex){ …… } } new MyString(“abcd”).isLike(“a*”)--?true new MyString(“ABCD”).isLike(“*C*”)--?true new MyString(“ABCD”).isLike(“ABC?”)--?true 3. 设计一个静态方法,返回字符c 重复n次的字符串 public static String sameChar(char c,int n) 4. 设计一个方法,将字符串s 左边用字符 fillChar填充,使其最终长度为length public leftPadding(String s,int length, char fillChar)

5. 设计一个方法,将字符串s 右边用字符 fillChar填充,使其最终长度为length public rightPadding(String s,int length, char fillChar) 6. 设计一个方法,实现返回字符串左边 n 个字符。 7. 设计一个方法,实现返回字符串右边 n 个字符。

8.使用if语句和switch语句判断手机号码的种类.手机号码为11位,各位全部位数字,且 前两位为13,第三位数字为5---9时属于移动手机号码,为0,1时属于连通GSM手机号码,为3时属于联通CDMA手机号码,为2,4时无效. 9.设计一方法,输入十进制数,返回12进制字符串。

10. 设计一个类,封装十六进制操作。 11. 编写一方法,输入一个字符串,输出布尔量。当该字符串是回文时,返回true,否则,返回false

12.输入一个英文字符串,统计出其中各字符出现的次数,并以下列样式输出: a=?,b=?,c=?,d=?,e=? f=?,g=?,h=?,i=?,j=?

13. 输入一个英文字符串,统计出其中各字符出现的次数,并以下列样式输出: a=?,b=?,c=?,d=?,e=? f=?,g=?,h=?,i=?,j=? 14.设计一个星座类,并为其添加一个带参数的构造函数, class Constellation{ private Calendar birthday; public Constellation(String birthday){ } String getConstellation(){返回 星座 static public String getConstellation(String birthday) //返回星座 } int getBornYear(){ } int getBornMonth(){ } int getBornDay(){ } } 出生日期与星座关系如下: 1.20---2.18 水瓶座

2.19----3.20 双鱼座 3.21----4.19. 牧羊座 4.20---5.20 金牛座 5.21-----6.21双子座 6.22.----7.22巨蟹座 7.23----8.22 狮子座 8.23----9.22 处女座 9.23.----10.23天秤座 10.24-----11.22天蝎座 11.23---12.21 射手座 12.22.----1.19 山羊座

15. 编写一个计算英文句子中最长单词的长度(字符数),假设该英文句子中只含有字母和

空格,句子以”.”结尾

16. 巴黎时间比北京时间晚7个小时,纽约时间比北京时间晚12个小时,东京时间比北京时间早2个小时,设计一个方法,根据输入的北京时间输出相应的巴黎时间,纽约时间和东京时间。如当前北京时间为8点,则巴黎时间为1点,纽约时间为前一天20点,东京为10

点。

16.删除字符串s中所有的字串childStr.

17.写一函数,用于删除字符串左边的特定字符,如果删除字符串右边的特定字符呢?

StringBuffer类

前已述及,String 类创建的字符串是不可修改的,一般用于固定场合。如果要对字符串进行动态增减,则用StringBuffer类,因此,StringBuffer又称动态字符串。 1.构造函数 StringBuffer() StringBuffer(int iniCapacity) StringBuffer(String s) 2.操作函数: 2.1. 获得长度 int length() 返回字符串的个数 2.2. 添加对象 append(object obj)//在尾部添加对象 insert(int StartPos,object obj)在StartPos位置插入对象obj 2.3. 返回字符串 String toString() 2.4. 删除子串 StringBuffer delete(int start,int end) 删除从start开始到end-1之间的字符串,并返回当前对象的引用

StringBuffer deleteCharAt(int index)

删除索引为index位置处的字符,并返回当前对象的引用 2.5. 获得字符 char charAt(int index) 返回索引处的字符 2.6. 修改字符 void setCharAt(int index,char c) 设置索引index处的字符为c 2.7. 获得子串 String substring(int startIndex) 返回从startIndex开始直到最后的全部字符 String substring(int startIndex,int endIndex)返回范围startIndex--endIndex的字符串 2.8. 反转字符串 StringBuffer reverse() 将该对象实体中的字符序列反转,并返回当前对象的引用。

2.9. 替换子串 String replace(int startIndex, int endIndex,String newStr) 用newStr替换当前对象从startIndex到 endIndex-1 之间的字符序列,并返回对

当前对象的引用。

练习: 1. 使用StringBuffer类,构建字符堆栈 public class CharStack{ private StringBuffer stack; public CharStack(){