Java API String函数调用及“==”与equal()的区别
(2012-10-23 22:24:37)
标签:
教育
public class StringTest1 {
public static void main(String[] args) {
String sa = "javanet";
String sb = "jAvanet";
// 返回索引处的字符c
char c = sa.charAt(4);
System.out.println("c = " + c);
// 用equals来判断sa和sb是否相等
if (sa.equals(sb))
System.out.println("sa和sb相等");
else
System.out.println("sa和sb不相等");
// 用==来判断sa和sb是否相等
if (sa == sb)
System.out.println("sa和sb相等");
else
System.out.println("sa和sb不相等");
// 返回指定索引处的字符(Unicode 代码点)即字符的ascci如a为97
int s = sa.codePointAt(3);
System.out.println(s);
// 返回指定索引之前的字符(Unicode 代码点)即字符的ascci如a为97
s = sa.codePointBefore(4);
System.out.println(s);
// 返回此 String 的指定文本范围中的 Unicode 代码点数即个数
s = sa.codePointCount(1, 5);
System.out.println(s);
// 返回此 String 中从给定的 index 处偏移 codePointOffset 个代码点的索引即将两个相加
s = sa.offsetByCodePoints(1, 3);
System.out.println(s);
// 将字符从此字符串复制到目标字符数组。
char sw[] = new char[6];
sw[0] = 's';
sa.getChars(1, 3, sw, 3);
for (int i = 0; i < sw.length; i++) {
System.out.print(sw[i] + " ");
}
System.out.println();
//使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
byte sw1[] = new byte[10];
sw1[0] = 2;
sw1 = sa.getBytes();
for (int i = 0; i < sw1.length; i++) {
System.out.print(sw1[i] + " ");
}
System.out.println();
//将此字符串与指定的 StringBuffer 比较。当且仅当此 String 与指定 StringBuffer
表示相同的字符序列时,结果才为 true。
if (sa.contentEquals(sb))
System.out.println("sa和sb相等");
else
System.out.println("sa和sb不相等");
//将此 String 与另一个 String
比较,不考虑大小写。如果两个字符串的长度相同,并且其中的相应字符都相等(忽略大小写),则认为这两个字符串是相等的。
if (sa.equalsIgnoreCase(sb))
System.out.println("sa和sb相等");
else
System.out.println("sa和sb不相等");
//按字典顺序比较两个字符串。
if (sa.compareTo(sb)==0)
System.out.println("sa和sb相等");
else if(sa.compareTo(sb)<0)
System.out.println("sa小于sb");
else
System.out.println("sa大于sb");
//按字典顺序比较两个字符串,不考虑大小写。
if (sa.compareToIgnoreCase(sb)==0)
System.out.println("sa和sb相等");
else if(sa.compareToIgnoreCase(sb)<0)
System.out.println("sa小于sb");
else
System.out.println("sa大于sb");
//测试两个字符串区域是否相等。
if (sa.regionMatches(0,sb,0,3))
System.out.println("sa和sb区域相等");
else
System.out.println("sa和sb区域不相等");
//测试此字符串从指定索引开始的子字符串是否以指定前缀开始。
if (sa.startsWith(sb,2))
System.out.println("子字符串符合前缀条件");
else
System.out.println("子字符串不符合前缀条件");
//测试此字符串是否以指定前缀开始。
if (sa.startsWith(sb))
System.out.println("sa符合前缀条件");
else
System.out.println("sa不符合前缀条件");
//测试此字符串是否以指定后缀结束。
if (sa.startsWith(sb))
System.out.println("sa符合后缀条件");
else
System.out.println("sa不符合后缀条件");
System.out.println("输出sa的哈希码: "+sa.hashCode());
//返回指定字符(用assic表示)在此字符串中第一次出现处的索引。
System.out.println("97在sa中第一次出现的位置: "+sa.indexOf(97));
//返回在此字符串(用assic表示)中第一次出现指定字符处的索引,从指定的索引开始搜索。
System.out.println("97在sa的子串中第一次出现的位置: "+sa.indexOf(97,2));
//返回指定子字符串在此字符串中最右边出现处的索引。
System.out.println("va在sa中最后一次出现的位置: "+sa.lastIndexOf("va"));
//返回指定子字符串在此字符串的指定子串中最右边出现处的索引。
System.out.println("va在sa的指定子串中最后一次出现的位置: "+sa.lastIndexOf("va",5));
//返回一个新的字符串,它是此字符串的一个子字符串。该子字符串从指定索引处的字符开始,直到此字符串末尾。
System.out.println("输出sa的从2开始的子串 :"+sa.substring(2));
//返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的 beginIndex 处开始,直到索引 endIndex - 1
处的字符。因此,该子字符串的长度为 endIndex-beginIndex
System.out.println("输出sa的从2开始以4结束的子串 :"+sa.substring(2,4));
//返回一个新的字符序列,它是此序列的一个子序列。
System.out.println("输出sa的从2开始以4结束的子串 :"+sa.subSequence(2,4));
//将指定字符串连接到此字符串的结尾。
System.out.println("输出字符串连接后产生的新字符串:
"+sa.concat(" asdghjas"));
//返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的
System.out.println("输出替代后产生的新字符串: "+sb.replace('a','k'));
//告知此字符串是否匹配给定的正则表达式。
if (sa.matches(sb))
System.out.println("sa和sb匹配");
else
System.out.println("sa和sb不匹配");
//当且仅当此字符串包含指定的 char 值序列时,返回 true。
if (sa.contains("java"))
System.out.println("sa包含“java”");
else
System.out.println("sa不包含“java”");
//使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
System.out.println("输出匹配的子串被替代后的新字串:
"+sa.replaceAll("va","VA"));
//使用指定的字面值替换序列替换此字符串所有匹配字面值目标序列的子字符串。该替换从字符串的
System.out.println("输出被替代后的子串: "+sa.replace("va","VA"));
String sq="boo:and:foo";
String ww[]=sq.split(":");
//根据匹配给定的正则表达式来拆分此字符串。 System.out.println("输出拆分后的子串: "+ww);
//将字符串全部转换为小写
System.out.println("将sb转换为小写: "+sb.toLowerCase());
//将字符串全部转换大写
System.out.println("将sb转换为大写: "+sb.toUpperCase());
sa=" javanet";
//返回字符串的副本,忽略前导空白和尾部空白。
System.out.println("出去字符串的前导空白和尾部空白 :"+sa.trim());
int t[]=new int[5];
t[0]=97;
t[1]=98;
t[2]=100;
t[3]=99;
t[4]=101;
//返回此对象本身(它已经是一个字符串!)。
System.out.println("转变成的字符串为:"+t.toString()+"
"+sa.toString());
//将此字符串转换为一个新的字符数组。
System.out.println("转变成的字符数组为:"+sa.toCharArray());
//返回 int 参数的字符串表示形式。
int p=9700;
System.out.println("int 参数的字符串表示形式为:"+String.valueOf(p));
//返回字符串对象的规范化表示形式。
System.out.println("字符串对象的规范化表示形式为:"+sa.intern());
//返回指定数组中表示该字符序列的 String。
char y[]=new char[10];
for(int i=0;i<10;i++)
y[i]='a'+1;
System.out.println("字符数组转换为字符串:"+String.valueOf(y,0,5));
//使用指定的格式字符串和参数返回一个格式化字符串。,表示从右到左没3为用,隔开;9d表示输出9位
System.out.println("输出格式化的结果:"+String.format("%1$9d", -31));
System.out.println("输出格式化的结果:"+String.format("%1$012d",
-31230000));
}
}
分享:
喜欢
0
赠金笔
加载中,请稍候......
评论加载中,请稍候...
发评论
登录名: 密码: 找回密码 注册记住登录状态
昵 称:
发评论
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。