【java】开发中常用字符串方法
java字符串的功能可以说非常强大, 它的每一种方法也都很有用.
java字符串中常用的有两种字符串类, 分别是String类和StringBuffer类.
Sting类
String类的对象是不可变的.
创建String
String()
String(String str)
String(char value[]) //用字符数组生成一个串对象
String(char value[], int offset, int count) //用字符数组value的offset位开始的count个字符,建立一个字符串对象
常用方法
int length()
String toLowerCase()//返回当前串的小写
String toUpperCase()//返回当前串的大写
char[] toCharArray()//返回当前串的字符串数组
String trim()//删除当前字符串的前部和后部空格并返回新串
实例:
String str = new String(" Hello world ");
str.length(); //返回str的长度为11
str.toLowerCase();//将str转换为小写, " hello world "
str.toUpperCase();//将str转换为大写, " HELLO WORLD "
char[] strChar = str.toCharArray();//将str转换为strChar字符数组
str.trim();//删除前后的空格, "Hello world"
比较性质的方法
boolean regionMatches(int toffset, String str, int ooffset, int len)//比较从本串的toffset开始的len个字符和str从ooffset开始的len个字符是否一致, 一致则返回true(可用来检测字符换字符串在当前串中出现的次数)
boolean regionMatches(boolean IgnoreCase, int toffset, String str, int ooffset, int len)//同上, IgnoreCase决定是否忽略大小写, IgnoreCase为true时忽略大小写
String concat(String str)//返回当前字符串与str串连接后的新串
int compareTo(String str)//比较字符串中相同位置的Unicode, 若两串相等返回0, 否则当前串大于str返回比较字符的差值
int compareToIgnoreCase(String str)//忽略大小写比较, 同上
boolean equals(Object anObj)//比较两个对象的值是否相等.这里比较两个字符串对象是否相等
boolean equalsIgnoreCase(String anotherString)//忽略大小写, 比较两个字符串对象是否相等
boolean startsWith(String prefix[, int toffset])//判断当前字符串从toffset开支是否以参数prefix开头, []中括号表示可省略
boolean endsWidth(string prefix[, int toffset])//判断当前字符串从toffset开始是否以参数prefix结尾
查找方法
//字符ch查找, 注意是字符
int indexOf(int ch)//从前向后找第一个字符ch出现的位置, 未找到返回-1
int indexOf(int ch, int fromIndex)//从fromIndex位置开始向后找第一个字符ch出现的位置, 未找到返回-1
int lastIndexOf(int ch)//从后向前找第一个字符ch出现的位置, 未找到返回-1
int lastIndexOf(int ch, int fromIndex)//从fromIndex位置开始前后找第一个字符ch出现的位置, 未找到返回-1
//子串str查找
int indexOf(String str)//从当前字符串开头向后查找子串str第一次出现的位置, 未找到返回-1
int indexOf(String str, int fromIndex)//从当前字符串的fromIndex位置向后查找子串str第一次出现的位置, 未找到返回-1
int lastIndexOf(String str)//从当前字符串结尾向前查找子串str第一次出现的位置, 未找到返回-1
int lastIndexOf(String str, int fromIndex)//从当前字符串的fromIndex位置向前查找子串str第一次出现的位置, 未找到返回-1
char charAt(int index)//返回当前字符串index位置处的字符
替换方法
//替换
String replace(char oldchar, char newchar)//将字符串中所有oldcha字符r替换为newchar字符
String replaceFirst(String regex, String replacement)//将字符串中第一个与正则表达式regex匹配的子串用新串replacement替换
String replaceAll(String regex, String replacement)//将字符串中所有与正则表达式regex匹配的子串用新串replacement替换
String substring(int start[, int end])//返回start到end-1返回的子串, 若省略end, 则为start到串尾.
String[] split(String regex)//返回当前字符串通过正则表达式分割的字符串数组
其他方法
将数字化的字符串转换为基本类型
public static byte parseByte(String s) throws NumberFormatException
public static short parseShort(String s) throws NumberFormatException
public static short parseInt(String s) throws NumberFormatException
public static long parseLong(String s) throws NumberFormatException
public static float parseFloat(String s) throws NumberFormatException
public static double parseDouble(String s) throws NumberFormatException
用法举例:
int a = Integer.parseInt(“23”);
其他类型转换为字符串
public static String valueOf(int n)
public static String valueOf(char[] data)
public static String valueOf(Object obj)
public static String copyValueOf(char[] data)等同于valueOf(char[] data)
用法举例:
String.valueOf(334);
StringBuffer类
StringBuffer()//创建空StringBuffer对象
StringBuffer(int length)//创建一个长度为length的StringBuffer对象
StringBuffer(String str)//创建一个str字符串StringBuffer对象 StringBuffer append(Object obj)//将对象obj添加到StringBuffer对象中
StringBuffer insert(int position, Object obj)//将对象obj插入到StringBuffer对象中的position位置
StringBuffer setCharAt(int position, char ch)//用字符ch替换StringBuffer对象中的position位置
StringBuffer deleteCharAt(int position)//删除position位置的字符
StringBuffer replace(int start, int end, String str)//将StringBuffer对象中start到end-1的位置用字符串str替换
【java】开发中常用字符串方法的更多相关文章
- 编写高质量代码:改善Java程序的151个建议(第一章:JAVA开发中通用的方法和准则)
编写高质量代码:改善Java程序的151个建议(第一章:JAVA开发中通用的方法和准则) 目录 建议1: 不要在常量和变量中出现易混淆的字母 建议2: 莫让常量蜕变成变量 建议3: 三元操作符的类型务 ...
- Java开发中常用jar包整理及使用
本文整理了我自己在Java开发中常用的jar包以及常用的API记录. <!-- https://mvnrepository.com/artifact/org.apache.commons/com ...
- Java 开发中常用的网站地址
博客地址:http://www.moonxy.com 一.前言 在日常的开发中,通常需要访问或者设置不同的网站来获取需要的数据,不如我们都知道 Linux 系统版本比较多(例如:Ubuntu.Cent ...
- 第1章 Java中常用字符串方法总结
1.1 charAt方法——提取指定字符 1.2 codePointAt方法——提取索引字符代码点 1.3 codePointBefore方法——获取索引前一个字符的代码点 1.4 codePoint ...
- 编写高质量代码:改善Java程序的151个建议(第1章:JAVA开发中通用的方法和准则___建议16~20)
建议16:易变业务使用脚本语言编写 Java世界一直在遭受着异种语言的入侵,比如PHP,Ruby,Groovy.Javascript等,这些入侵者都有一个共同特征:全是同一类语言-----脚本语言,它 ...
- Java学习之==>常用字符串方法
1.定义字符串 // 定义, 为初始化 String str1; // 定义, 并初始化为null String str2 = null; // 定义, 并初始化为空串 String str3 = & ...
- Android开发中常用到方法总结
1.判断服务是否在运行中 public static boolean isServiceRunning(Context context, String serviceName) { boolean ...
- XSS跨站脚本攻击在Java开发中防范的方法
1. 防堵跨站漏洞,阻止攻击者利用在被攻击网站上发布跨站攻击语句不可以信任用户提交的任何内容,首先代码里对用户输入的地方和变量都需要仔细检查长度和对”<”,”>”,”;”,”’”等字符做过 ...
- Java开发中常用的设计模式(二)---单例模式
一. 懒汉式单例 //懒汉式单例类.在第一次调用的时候实例化自己 public class Singleton { private Singleton() {} private static Sing ...
随机推荐
- Python多线程、多进程实现
劝君莫惜金缕衣,劝君惜取少年时.花开堪折直须折,莫待无花空折枝. 内容摘要: paramiko模块 进程.与线程区别 python GIL全局解释器锁 多线程 语法 join 线程锁 ...
- How to resize or create a thumbnail image from file stream on UWP
最近在搞Ocr相关的windows universal app, 用到了一些图像处理相关的知识. 涉及到了BitmapDecoder/BitmapEncoder/IRandomAccessStream ...
- [转载]sql server 分布式查询
--用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset('SQLOLEDB' ,'sq ...
- 用SpringSecurity从零搭建pc项目-01
注:之前写过一些列的SpringSecurity的文章,重新写一遍是为了把某些不必要的步骤省去,留下精简的,因为工作中有一些不需要. 在java的权限框架里,shiro和SpringSecurity是 ...
- 三:理解Page类的运行机制(例:在render方法中生成静态文件)
我这里只写几个常用的事件1.OnPreInit:此事件后将加载个性化信息和主题2.OnInit:初始化页面中服务器控件的默认值但控件的状态没有加载,没有创建控件树3.OnPreLoad:控件完成状态和 ...
- Java总结:开发环境
更多请查看在线文集:http://android.52fhy.com/java/index.html Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言 ...
- IC 设计中DFT的Boundary Scan功能
在很大规模的IC设计中,往往会有一些各种各样的bug出现,不论是在前期design的过程,还是在post silicon流片回来chip的flaw,都会导致chip的功能的失败,时钟频率无法达到期望频 ...
- 软件架构设计学习总结(18):MVC三层架构在各框架(jsp+servlet + Struts1+ Struts2+ springMVC)中的特征
1.基于web开发中最原始的jsp+Servlet 图形化理解jsp+servlet结构: 1.从结构上分析jsp+servlet图解原理: 在基于mvc设计模式下的最原始的jsp+Servlet ...
- Python虚拟环境工具-Virtualenv 介绍及部署记录
在开发Python应用程序时,系统默认的Python版本可能会不兼容这个应用程序, 如果同时开发多个应用程序, 可能会用到好几个版本的python环境, 这种情况下,每个应用可能需要各自拥有一套&qu ...
- 我眼中的优秀技术leader
在这家公司工作的四年时间里,我一共接触过两个在技术团队里有很大影响力的leader.本文将基于我在工作中对他们的观察,总结一下他们身上所具有的特质,以作为自己学习的榜样.标题中的“我眼中的”,不仅表示 ...