整理以前的笔记,在学习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 简单实用方法二的更多相关文章

  1. bootstrapValidator.js,最好用的bootstrap表单验证插件 简单实用方法

    实用方法 1.引入 在有jquery和bootstrap的页面里引入bootstrapValidator.js和bootstrapValidator.css文件 2. 按照bootstrap的表单组件 ...

  2. Java简单实用方法一

    整理以前的笔记,在学习Java时候,经常会用到一些方法.虽然简单但是经常使用.因此做成笔记,方便以后查阅 这篇博文先说明构造和使用这些方法. 1,判断String类型数据是否为空 String类型的数 ...

  3. MQTT——java简单测试(二)

    服务端代码: package bsit.mqtt.demo.one_way; import org.eclipse.paho.client.mqttv3.MqttClient; import org. ...

  4. NProgress.js加载进度插件的简单实用方法

    NProgress.js 说明: NProgress是基于jquery的,且版本要 >1.8 下载地址: https://github.com/rstacruz/nprogress API: N ...

  5. 关于Android对话框简单实用方法总结

    要显示一个对话框,首先需要在xx.xml下添加一个Button按钮,并添加一个对应id. 单次点击事件对话框: button.setOnClickListener(new View.OnClickLi ...

  6. Javascript实用方法二

    承接上一篇, Object keys object的keys方法能够获取一个给定对象的所有键(key/属性名)并以数组的形式返回.这个方法可以用于键的筛选.匹配等. var basket = { st ...

  7. Swiper的简单实用方法

    最近项目中有用到一个非常强大的组件idangerous.swiper.js的组件,这个组件能够实现幻灯片的播放效果,而且有各种3D效果,大家可以去试一下,效果很不错的说! 这是这个项目的api文档:h ...

  8. 浅谈vuex使用方法(vuex简单实用方法)

    Vuex 是什么? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vu ...

  9. vuex的module的简单实用方法

    当我们的项目越来越大的时候,我们就开始使用vuex来管理我们的项目的状态.但是如果vuex的状态多了呢,这个时候module就登场了.看了一下官方的文档,很详细,但是没有demo让初学者很头疼.那我就 ...

随机推荐

  1. Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改

    Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改 Win7下C:\Users\Cortana以账户名称命名的系统文件夹用户名的修改 即修改Cmd命令提示符:C:\Use ...

  2. 一起学ASP.NET Core 2.0学习笔记(二): ef core2.0 及mysql provider 、Fluent API相关配置及迁移

    不得不说微软的技术迭代还是很快的,上了微软的船就得跟着她走下去,前文一起学ASP.NET Core 2.0学习笔记(一): CentOS下 .net core2 sdk nginx.superviso ...

  3. dede织梦如何防止被黑客入侵渗透?

    dede精简设置篇:避免被hack注射挂马 精简设置篇:不需要的功能统统删除.比如不需要会员就将member文件夹删除.删除多余组件是避免被hack注射的最佳办法.将每个目录添加空的index.htm ...

  4. RestTemplate post如何传递参数

    背景 今天跟同事接口联调,使用RestTemplate请求服务端的post接口(使用python开发).诡异的是,post请求,返回500 Internal Server Error,而使用get请求 ...

  5. log4j日志框架学习

    初识Log4j:      log4j有三个部分:           1.loggers 负责捕获日志信息.           2.appenders  负责输出信息到不同的目的地         ...

  6. IO库

    IO类 C++语言不直接处理出入输出,而是通过一族定义在标准库中的类型来处理IO.这些类型支持从设备读取数据.向设备写入数据的IO操作,设备可以是文件 .控制台窗口 等.还有一些类型允许内存IO ,即 ...

  7. Linux上Oracle自动启停方案

    环境 CentOS 6 x86_64, Oracle 11g R2   方案 Oracle在$ORACLE_HOME/bin目录下提供了dbstart和dbshut两个脚本来启动和停止Oracle.d ...

  8. [REST] 1.REST的起源

    0. 世界上第一个网站 1990年12月20日,这一天对于现在的互联网来说意义非凡.欧洲核子研究组织(CREN)的科学家Tim Berners-Lee在一台NeXT电脑上启动了世界上的第一个网站(当然 ...

  9. 使用Jmeter进行http接口测试 ---------成都杀手

    前言: 本文主要针对http接口进行测试,使用Jmeter工具实现. Jmter工具设计之初是用于做性能测试的,它在实现对各种接口的调用方面已经做的比较成熟,因此,本次直接使用Jmeter工具来完成对 ...

  10. VS2013禁用Browser Link

    禁用原因 VS2013新增的Browser Link功能虽然“强大”,但我并不需要. 但默认是开启的,会在页面中自动添加如下的代码,查看AJAX时造成很大的干扰. <!-- Visual Stu ...