话不多说,上代码:

/**

* 获取字符串的长度,如果有中文,则每个中文字符计为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判断中文字符串长度的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持聚米学院。

java 字符长度判断_java判断中文字符串长度的简单实例相关推荐

  1. java 字符是否存在_java判断字符是否存在的方法

    java判断字符是否存在的方法 发布时间:2020-06-10 09:41:51 来源:亿速云 阅读:165 作者:Leah 这篇文章给大家分享的是java判断字符是否存在的方法.小编觉得挺实用的,因 ...

  2. java 字符分割函数_java中的字符串分割函数

    Java中的我们可以利用split把字符串按照指定的分割符进行分割,然后返回字符串数组,下面是string.split的用法实例及注意事项: java.lang.string.split split ...

  3. java 拼音首字母_java获取中文拼音首字母的实例

    导读热词 正文 如下所示: import net.sourceforge.pinyin4j.PinyinHelper; public class PinyinHelperUtil { /** * 得到 ...

  4. java字符转为数字_java判断字符串是否可以转为数字

    java运算中,常涉及将String 型的字符串转为int 型数字的情况. 哪些字符串可以转为数字,哪些不可以呢,不能总以Integer.parseInt() 是否抛出异常来判断. 刚好碰到了转换情况 ...

  5. java字符转为数字_Java 判断字符串能否转化为数字的三种方法

    linux shell 常用指令 1. man 对你熟悉或不熟悉的命令提供帮助解释 eg:man ls 就可以查看ls相关的用法 注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止 ...

  6. java字符转数字_java怎样做到字符串转数字

    java字符串转数字的方法:1.转化为整型数字[Integer.parseInt(String s) ]:2.转化为浮点型数字[Float.parseFloat(String s)]. 相关免费学习推 ...

  7. java 字符码查询_Java URL查询字符串参数的编码

    URLEncoder应该是走的路.您只需要记住,只编码单个查询字符串参数名称和/或值,而不是整个URL,确保不要查询字符串参数分隔符字符&也不是参数名称 – 值分隔符字符=. String q ...

  8. java 字符转换为数字_JAVA中使用字符串转换为数字

    示例 1 : 四舍五入, 随机数,开方,次方,π,自然常数 public class Sder { public static void main(String[] args) { float f1 ...

  9. java 字符正则匹配算法_java把任意字符串删减成符合一个给定的正则表达式(已知)的方法该怎么写?...

    展开全部 ^String str = "q123wwwe.dd434rrd"; String result = null; if(str==null||str.equals(&qu ...

  10. java 字符长度 中文_java判断中文字符串长度的简单实例

    话不多说,上代码: /** * 获取字符串的长度,如果有中文,则每个中文字符计为2位 * @param value 指定的字符串 * @return 字符串的长度 */ public static i ...

最新文章

  1. 史上最全解读 | 飞桨模型库重大升级,主流算法模型全覆盖
  2. JMP跳转指令的指令长度、直接转移与间接转移、段内跳转与段间跳转
  3. java知识点7——面向过程和面向对象、面向对象的内存分析、构造方法
  4. SAP Kyma上创建的Lambda function背后的技术实现
  5. 微信小程序识别图片并提取文字_图片转文字识别功能的小程序,超精准识别——闪电识字...
  6. 前端学习(2853):简单秒杀系统学习之页面事件
  7. Net和T-sql中的日期函数操作
  8. 【Java】常见的Eclipse快捷键
  9. 博士导师总结目标检测、卷积神经网络和OpenCV学习资料(教程/PPT/代码)
  10. 工业级多用户博客系统
  11. 人工智能产业链深度透析—基础层
  12. JsonView插件的使用
  13. winform 读取用户控件的变量_winform中用户控件之间的传值
  14. Linux操作Oracle(5)——Oracle11g 卸载OPatch安装补丁的方法【rollback已安装的补丁】及报错问题解决
  15. ajax-登陆+验证码
  16. python 列表相关应用大全
  17. DB2数据库添加 更改字段
  18. 【单片机】keil 2032
  19. EasyClick 易点云测自动化测试入门到精通
  20. css 简单写出咸蛋超人

热门文章

  1. 男孩子不上学了学计算机要学历吗,十三岁男孩不上学,能学什么手艺?
  2. Microsoft Edge无法打开测试平台的解决方法
  3. Ruby‘s Adventrue游戏制作笔记(十五)UnityNPC对话
  4. 小学计算机的一些课题,小学信息技术小课题研究.doc
  5. linux+qt使用assimp库进行模型加载
  6. python结束函数_python结束函数
  7. 中国有些东西不是给人吃的
  8. [转] 香港流行乐坛三十年
  9. CorelDRAW零基础入门到精通
  10. 句子生成算法python实现