Java 简单实用方法二
整理以前的笔记,在学习Java时候,经常会用到一些方法。虽然简单但是经常使用。因此做成笔记,方便以后查阅
这篇博文先说明构造和使用这些方法。
1,判断String类型数据是否包含中文
可以通过正则表达式来判断。
public static boolean isChineseChar(String str) {
Pattern p = Pattern.compile("[\u4e00-\u9fa5]");
Matcher m = p.matcher(str);
return m.find();
}
String str1="你好";
String str2="Hello";
String str3="你好 ,@¥Hello@…… 世界.\\ ";
System.out.println(isChineseChar(str1)); //true
System.out.println(isChineseChar(str2)); //false
System.out.println(isChineseChar(str3)); //true
2,获取String类型中文的数据
那么先通过正则表达式来判断是否包含中文,如果数据包含中问便将中文数据取出来。
注:使用StringBuffer累加比String 效率更高。
public static String getChinese(String paramValue) {
String regex = "([\u4e00-\u9fa5]+)";
StringBuffer sb=new StringBuffer();
Matcher matcher = Pattern.compile(regex).matcher(paramValue);
while (matcher.find()) {
sb.append(matcher.group(0));
}
return sb.toString();
}
String str1="你好";
String str2="Hello";
String str3="你好 ,@¥Hello@…… 世界.\\ ";
System.out.println(getChinese(str1)); //你好
System.out.println(getChinese(str2)); //
System.out.println(getChinese(str3)); //你好世界
3,四舍五入取整数
使用DecimalFormat来格式化十进制数字。
注: 0 一个数字
# 一个数字,不包括 0
. 小数的分隔符的占位符
public static Double formatDouble(Double db,String format) {
if(null==format||"".equals(format)){
return db;
}
DecimalFormat df = new DecimalFormat(format); //定义格式
return Double.parseDouble(df.format(db));
}
double db1=5.6849;
System.out.println(formatDouble(db1,"#.00")); //5.68
System.out.println(formatDouble(db1,"#.000"));//5.685
System.out.println(formatDouble(db1,"#")); //6.0
System.out.println(formatDouble(db1,".00")); //5.68
System.out.println(formatDouble(db1,"00")); //6.0
4,String数据中插入指定字符
方法一:使用substring方法拼接起来
public static String insertString1(String a,String b,int t){
return a.substring(0,t)+b+a.substring(t,a.length());
}
String str4="abcdef";
System.out.println(insertString1(str4,"p",2));//abpcdef
System.out.println(insertString1(str4,"k",3));//abckdef
方法二:使用StringBuffer中insert方法
public static String insertString2(String a,String b,int t) {
StringBuilder sb = new StringBuilder(a);
sb.insert(t, b);
return sb.toString();
}
String str4="abcdef";
System.out.println(insertString2(str4,"p",2));//abpcdef
System.out.println(insertString2(str4,"k",3));//abckdef
5,String数据替换指定字符
方法一:通过在String插入字符可以得出,原该位置的字符回向后偏移,那么在拼接数据的时候去掉插入原位置的字符。
public static String repaceString1(String a,String b,int t){
return a.substring(0,t)+b+a.substring(t+b.length(),a.length());
}
String str4="abcdef";
System.out.println(repaceString1(str4,"pp",2));//abppef
System.out.println(repaceString1(str4,"kk",3));//abckkf
方法二:通过StringBuffer中的repace方法替换该字符
public static String repaceString2(String a,String b,int t){
StringBuilder sb = new StringBuilder(a);
sb.replace(t, t+b.length(), b);
return sb.toString();
}
String str4="abcdef";
System.out.println(repaceString2(str4,"pp",2));//abppef
System.out.println(repaceString2(str4,"kk",3));//abckkf
Java 简单实用方法二的更多相关文章
- bootstrapValidator.js,最好用的bootstrap表单验证插件 简单实用方法
实用方法 1.引入 在有jquery和bootstrap的页面里引入bootstrapValidator.js和bootstrapValidator.css文件 2. 按照bootstrap的表单组件 ...
- Java简单实用方法一
整理以前的笔记,在学习Java时候,经常会用到一些方法.虽然简单但是经常使用.因此做成笔记,方便以后查阅 这篇博文先说明构造和使用这些方法. 1,判断String类型数据是否为空 String类型的数 ...
- MQTT——java简单测试(二)
服务端代码: package bsit.mqtt.demo.one_way; import org.eclipse.paho.client.mqttv3.MqttClient; import org. ...
- NProgress.js加载进度插件的简单实用方法
NProgress.js 说明: NProgress是基于jquery的,且版本要 >1.8 下载地址: https://github.com/rstacruz/nprogress API: N ...
- 关于Android对话框简单实用方法总结
要显示一个对话框,首先需要在xx.xml下添加一个Button按钮,并添加一个对应id. 单次点击事件对话框: button.setOnClickListener(new View.OnClickLi ...
- Javascript实用方法二
承接上一篇, Object keys object的keys方法能够获取一个给定对象的所有键(key/属性名)并以数组的形式返回.这个方法可以用于键的筛选.匹配等. var basket = { st ...
- Swiper的简单实用方法
最近项目中有用到一个非常强大的组件idangerous.swiper.js的组件,这个组件能够实现幻灯片的播放效果,而且有各种3D效果,大家可以去试一下,效果很不错的说! 这是这个项目的api文档:h ...
- 浅谈vuex使用方法(vuex简单实用方法)
Vuex 是什么? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vu ...
- vuex的module的简单实用方法
当我们的项目越来越大的时候,我们就开始使用vuex来管理我们的项目的状态.但是如果vuex的状态多了呢,这个时候module就登场了.看了一下官方的文档,很详细,但是没有demo让初学者很头疼.那我就 ...
随机推荐
- Linux 命令大全之Red Hat 7常用命令总结二
Linux 命令大全之RedHat7常用命令笔记... ----------------------------------------------------- 征服Linux从终端开始 ----- ...
- 获取当前页面URL信息
文章链接:http://www.cnblogs.com/hongmaju/p/5510988.html 查看信息可以在控制台输出(tab或者右移补全): 如:document.URL window. ...
- 基于轻量级ORM框架Dapper的扩展说明
这里简单的介绍一下本人基于Dapper作的一些简单的扩展,供大家参考. 为何要使用这款框架,相信大家看到下面排名就清楚了 其实在各大网站上,我们大概都会看到这样的一个对比效果图,在超过500次poco ...
- JSP的getRequestDispatcher()与sendRedirect()的区别
getRequestDispatcher()与sendRedirect()的区别 1.request.getRequestDispatcher()是请求转发,前后页面共享一个request ; r ...
- html:table属性cellpadding
cellpadding:单元格边距(空白区域) colspan:可以横跨的列数(td/th都算一列) 详细:http://www.dreamdu.com/xhtml/attribute_cellpad ...
- chrome开发工具指南(四)
Sources 面板中 代码段是您可以从任何页面运行的小脚本(类似于小书签). 使用"Evaluate in Console"功能可以在控制台中运行部分代码段. 请注意,Sourc ...
- 第4阶段——制作根文件系统之编译配置安装busybox(3)
在上一节分析出制作一个最小的根文件系统至少需要: (1)/dev/console(终端控制台, 提供标准输入.标准输出以及标准错误) /dev/null (为空的话就是/dev/null, 所有写到 ...
- html加载和解析流程
之前查找资料了解了html的整个渲染过程,对于理解页面加载帮助还是蛮大的,下面我用visio把它画成流程图,便于直观理解 好吧,居然要150字才能发布............ 浏览器渲染过程 浏览器渲 ...
- 【Java IO流】对象的序列化和反序列化
对象的序列化和反序列化 1)对象序列化,就是将Object对象转换成byte序列,反之叫对象的反序列化. 2)序列化流(ObjectOutputStream),是字节的过滤流—— writeObjec ...
- 【集美大学1411_助教博客】alpha阶段后 成绩
团队作业7 成绩(助教对团队排名) 团队名称 设想和目标 计划 资源 变更管理 设计/实现 测试/发布 团队的角色,管理,合作 总结 全组讨论的照片 团队成员在Alpha阶段的角色和具体贡献 合计 排 ...