国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java判斷中文字符串長度的簡單實例

2019-11-26 13:11:51
字體:
來源:轉載
供稿:網友

話不多說,上代碼:

 /**  * 獲取字符串的長度,如果有中文,則每個中文字符計為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;  } /**   * 得到一個字符串的長度,顯示的長度,一個漢字或日韓文長度為2,英文字符長度為1   * @param String s 需要得到長度的字符串   * @return int 得到的字符串長度   */    public static int length(String s) {     if (s == null)       return 0;     char[] c = s.toCharArray();     int len = 0;     for (int i = 0; i < c.length; i++) {       len++;       if (!isLetter(c[i])) {         len++;       }     }     return len;   }   /**   * 得到一個字符串的長度,顯示的長度,一個漢字或日韓文長度為1,英文字符長度為0.5   * @param String s 需要得到長度的字符串   * @return int 得到的字符串長度   */    public static double getLength(String s) {   double valueLength = 0;      String chinese = "[/u4e00-/u9fa5]";      // 獲取字段值的長度,如果含中文字符,則每個中文字符長度為2,否則為1      for (int i = 0; i < s.length(); i++) {        // 獲取一個字符        String temp = s.substring(i, i + 1);        // 判斷是否為中文字符        if (temp.matches(chinese)) {          // 中文字符長度為1          valueLength += 1;        } else {          // 其他字符長度為0.5          valueLength += 0.5;        }      }      //進位取整      return Math.ceil(valueLength);    }根據長度截取內容,區分中英文:/**   * 截取字符長度,區分中英文   *   * @param abc 字符串內容   * @param len 截取長度   * @return   */  public static String subStr(String abc, int len) {    if (TextUtils.isEmpty(abc) || len <= 0)      return "";    StringBuffer stringBuffer = new StringBuffer();    int sum = 0;    char[] chars = abc.toCharArray();    for (int i = 0; i < chars.length; i++) {      if (sum >= (len * 3)) {        break;      }      char bt = chars[i];      if (bt > 64 && bt < 123) {        stringBuffer.append(String.valueOf(bt));        sum += 2;      } else {        stringBuffer.append(String.valueOf(bt));        sum += 3;      }    }    return stringBuffer.toString();  }

以上這篇java判斷中文字符串長度的簡單實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 威信县| 平度市| 北安市| 漳浦县| 邢台县| 交城县| 扎赉特旗| 灵石县| 永川市| 思茅市| 祁连县| 东明县| 敦化市| 灵川县| 鲁甸县| 郸城县| 咸丰县| 钟祥市| 绵竹市| 东丰县| 秀山| 津南区| 四川省| 仁怀市| 西藏| 肥西县| 阜城县| 芦溪县| 邮箱| 吉安市| 洛扎县| 寿阳县| 班戈县| 报价| 循化| 沈阳市| 军事| 岳西县| 新邵县| 环江| 鄂托克前旗|