regionMatches方法使用不明白

hailun 2006-02-18 10:08:25
运行结果怎么是5呢?怎么比较的呢

class Example5_3
{
public static void main(String args[])
{
int number=0;
String s="student;entropy;engage,englist,client";
for(int k=0;k<s.length();k++)
{
if(s.regionMatches(k,"en",0,2))
{
number++;
}
}
System.out.println("number="+number);
}
}



2. (1) float n=Float.parseFloat("12383.3839")

(2)float n=Float.valueOf("1233.38").floatValue() //Float.valueOf("1233.38")这里不是已经转换成float型了吗?后面这个floatValue()起的啥作用啊
//(1)与(2)有什么区别吗?


3.
class Example5_10
{
public static void main(String args[])
{
String s="清华大学出版社";
char a[]=s.toCharArray();
for(int i=0;i<a.length;i++)
{
a[i]=(char)(a[i]^'t'); //啥意思啊,为啥要强制转换呢(char)
}
String secret=new String(a);
System.out.println("密文:"+secrect);
for(int i=0;i<a.length;i++)
{
a[i]=(char)(a[i]^'t');
}
String code=new String(a);
System.out.println("原文:"+code);
}
}
...全文
312 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hailun 2006-02-22
  • 打赏
  • 举报
回复
都沉下来了
zhuyan911 2006-02-22
  • 打赏
  • 举报
回复
1:检查s中字符串有几个en 有一个number++
2:一个是string,一个是float
3:不太了解,应该是和上边的char a[]有关吧
725137 2006-02-22
  • 打赏
  • 举报
回复
1 第一个。计算en出现过多少次
2 (1) float n=Float.parseFloat("12383.3839")

(2)float n=Float.valueOf("1233.38").floatValue() //Float.valueOf("1233.38")这里不是已经转换成float型了吗?后面这个floatValue()起的啥作用啊
//(1)与(2)有什么区别吗?

Float.valueOf("1233.38"); 是将字符串形式的转成Float对象..Float和float不同.Float是一个包装类对象..调用他的floatValue()方法才能得到基本类型float
整个意思就是先将字符串转成Float对象.然后调用floatValue()方法将这个对象转为float形

3是将值与't'的ASCii码异或..然后得到一个int形。然后再强制转换成char.
char转成int不用强转。但int转换成char可能会造成精度丢失.所以要强转

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧