length()方法返回的是一个基于16位unicode字符的字符串长度.
解决方案 »
- java swing jtree 叶子节点闪烁的问题
- 为何MyEclipse8.0下不显示deployment descriptor啊
- 假设字符串类似这样的aba和aab就相等,现在随便给你二组字符串,请编程比较他们看是否相等
- 请问抽象类和接口的区别?
- 用什么方法发送Soap消息???????
- SOS(快来帮忙啦) 小妹在此谢过!
- 初学Java有个问题:如何输入?
- 在java中如何启动非java的可执行程序?
- itext中关于Table的几个问题。(重金悬赏)
- tomcat4如何配置数据库连接池(oracle)
- swing怎么得到当前活动的mdi子窗口
- 大侠们指点面向对象的问题!《jsp标志库编程指南》上的例子
判断String里是否包括有中文字符可以用这个方法
...
if(s1.getBytes().length==s1.length())
{
//如果两个长度相等,说明s1里无汉字
}else{
//如果两个长度不相等,就说明s1里面有汉字
}
...
所以输出的长度是2、4、6
这是char和byte之间的区别
这个判断方法是欠妥的,不单单只有汉字是说字节的,日文也是
如果String s = "アプリケーション" 的话,一样会执行if里的语句
所以个人认为,没有什么很好的方法判断String类型里是否有汉字
public int length()
Returns the length of this string. The length is equal to the number of 16-bit Unicode characters in the stringlength()返回的是字符串中16位unicode字符的个数,所以你得出来的答案就是这个原因了。至于如何判断汉字,除了kiss0931(年终奖金250块--好数目)的方法,我不会别的