ç®åå®ç°ä»£ç å¦ä¸ï¼
public class StringLength {
/**
* è·åå符串çé¿åº¦ï¼å¦ææä¸æï¼åæ¯ä¸ªä¸æå符计为2ä½
* @param value æå®çå符串
* @return å符串çé¿åº¦
*/
public static int length(String value) {
int valueLength = 0;
String chinese = "[\u0391-\uFFE5]";
/* è·åå段å¼çé¿åº¦ï¼å¦æå«ä¸æå符ï¼åæ¯ä¸ªä¸æå符é¿åº¦ä¸º2ï¼å¦å为1 */
for (int i = 0; i < value.length(); i++) {
/* è·åä¸ä¸ªå符 */
String temp = value.substring(i, i + 1);
/* å¤ææ¯å¦ä¸ºä¸æå符 */
if (temp.matches(chinese)) {
/* ä¸æå符é¿åº¦ä¸º2 */
valueLength += 2;
} else {
/* å
¶ä»å符é¿åº¦ä¸º1 */
valueLength += 1;
}
}
return valueLength;
}
public static void main(String args[]){
String str = "helloä½ å¥½";
System.out.println(StringLength.length(str));
}
}
温馨提示:答案为网友推荐,仅供参考