java中如何区分字符串中的字母和汉字?
由于字母和汉字在屏幕上的显示大小不同,然而在java中却占相同的字节数(测试长度相同),请问有什么方法区分他们。我想限制用户输入的字母在10个以内,而汉字在5个以内。
我做了如下的处理,是这样的吗?总觉得太复杂,一点没c语言简单,真想不通java为什么要把一个字节能表示的东西放到两个字节里去?
/////////////////////////////////////////////////////////////////////
String s=jTFName.getText().trim();
char[] c=s.toCharArray();
int tp=0;
for(int i=0;i<c.length;i++)
{
if((int)c[i]>10000){
tp+=2;
}
else {
tp++;
}
}
if(tp>8){
JOptionPane.showMessageDialog(this,"玩家名称不能超过八个字母(一个汉字占两个字母的位置)!","提示",JOptionPane.WARNING_MESSAGE);
return;
}