String是不可变对象,当字符串内容改变时将重新创建对象,字符串的引用可以指向同一个对象,也可以重新赋值。

在内存中采用Unicode编码,每个字符占2字节

String常量池:java为了提高性能,静态字符串(字面量/常量)在常量池中创建,并尽量使用同一个对i徐昂,重用静态字符串。对于重复出现的字符串直接量,JVM会首先在常量池中查找,如果存在即返回该对象。

String的构造方法:

String():创建一个内容的空字符串对象

String(String  value):创建字符串内容为value的对象

String(Char[]  value):创建字符串内容为字符数组value的对象

String(byte[]  bytes):创建字节数组连成的字符串对象

String(byte[]  bytes,String  CarsetName):将字节数组bytes转化为对应的字符串CarseName

int length():获取字符串字符序列的长度

int  indexOf(str):用于查找给定字符串的位置,从第0位置开始查找第一次出现str字符串的位置,找不到返回-1

int indexOf(String str,int n):从第n个位置开始查找第一次出现str字符串的首位置。找不到返回-1

int lastIndexOf(String str,int n):从第n个位置开始查找最后一次出现str字符串的首位置,找不到返回-1

String  substring(int  start):截取从start位置开始到末尾的字符串

String substring(int start ,int end):用于截取指定位置的字符串,截取从第start位置到第end位置的字符串

String trim():用于除去字符串两边的空白(包括空格和Tab键出的空白)

char chatAt(int m):获取字符串中指定位置m处的字符

boolean startsWith(String str):检查一个字符串是否以指定字符串str开始

boolean endsWith(String str):检查一个字符串是否以指定字符串str结束

String toUpperCase():将字符串中的英文部分转换为大写字母

String toLowerCase():将字符串中的英文部分转换为小写字母

String.valueOf():属于静态方法,用String调用,将其他类型转化为字符串类型

String  concat(String  str):将字符串str追加到字符串末尾。

byte[]  getByte():以当前系统默认的字符串编码集,返回字符串所对应的二进制序列

byte[]  getByte(String   charsetName):将当前字符串按照charsetName格式转换为与之相对应的字节,并存入字节数组,GBK:国标字符集; UTF-8:国际字符集

boolean  equalsIgnoreCase(String  str):是不区分字母大小写的equals()比较,常用于验证码

getCahrs(int  begin,int  end,char[],int  dstbegin):从字符串begin位置开始,到end位置结束,复制字符串到字符数组char[],从数组的detbegin的位置开始存储。

boolean matches(String regex):验证当前字符串是否满足给定的正则表达式格式要求

比较当前字符串是否符合regex(正则表达式)格式

(在java中,无论写不写^和$,mmatches方法都是全匹配验证)

String[] split(String regex):用于拆分字符串

将给定的字符串中满足regex(正则表达式)格式的部分切除掉,保留余下的部分按顺序存储在一个字符串数组中(String[])。

String replaceAll(String regex, String replace):将字符串中满足正则表达式regex的部分替换为给定字符串replace


StringUtils类

针对字符串操作的工具类,提供了一系列静态方法,在Apache阿帕奇Commons-lang包下中,需下载。

StringUtils常用方法:

1)String repeat(String str,int repeat):重复字符串repeat次后返回。

2)String join(Object[] array,String):将一个数组中的元素连接成字符串。

3)String leftPad(String str,int size,char padChar):向左边填充指定字符padChar,以达到指定长度size。

4)String rightPad(String str,int size,char padChar):向右边填充指定字符padChar,以达到指定长度size。

java的(String)字符串方法相关推荐

  1. Java中String字符串截取几种方法(substring,split)

    Java中String字符串截取几种方法 substring,split 这是一个Java中的String的基础用法的演示. 下面通过代码对大家进行讲解 substring 这里用来ndexOf,la ...

  2. Objective-C 字符串拼接函数 多个不同类型的参数拼接到一个字符串 类似于Java中 String.format()方法的原生API

    总目录 iOS开发笔记目录 从一无所知到入门 文章目录 需求 Screenshot Code Output 需求 我有多个参数(类型也许不同),需要拼接到一个字符串中. 在Java中有String.f ...

  3. java substr函数_oracle 中的substr()函数的用法,以及与java中String.substring()方法的区别...

    oracle 中的substr()函数的规则是 substr( string, start_position, [ length ] ) 说明: string 是要分割的字符串 start_posit ...

  4. java string contains indexof,java.lang.String.contains()方法实例

    全屏 java.lang.String.contains()当且仅当此字符串包含char值的指定序列,此方法返回true. 声明 以下是java.lang.String.contains()方法的声明 ...

  5. Java中String 字符串与List<String>互转

    Java中String 字符串与List互转 大家好,我是酷酷的韩~ 1.String转List public static void main(String[] args) {String aa = ...

  6. Java中String字符串:空字符串、存放空的字符串、null的区别

    Java中String字符串:空字符串.存放空的字符串.null的区别 Java String字符串中有三种特殊的字符串:空字符串.存放空的字符串.字符串为Null,如下所示: String str1 ...

  7. Java将String字符串里的每个字符都分割取出来

    Java将String字符串里的每个字符都分割取出来 方法一 String str = "play with style"; char[] strArray = str.toCha ...

  8. java基础-String字符串字符长度校验

    java基础-String字符串字符长度校验 /*** 校验字符串是否在规定字符数内* @param str* @param maxLength* @return*/ public static bo ...

  9. Java中string字符串的值_Java中的字符串(String)

    一.基本概念: 字符串是一系列字符串的序列.在Java语言中字符串是用一对对双引号"",括起来的字符系列.例如"Hello","你好".从数 ...

  10. 基于Java的String字符串基本用法总结

    在Java中,String类是字符串操作类,提供了多种方法对字符串进行操作,经过学习对String类的常用方法总结如下: 一.String字符串的创建 由于String类位于Java的lang包下,所 ...

最新文章

  1. Java的Clone
  2. SCVMM2012 SP1 添加VMware vCenter服务器
  3. PyQt5 技术篇-在clipboard.dataChanged.connect()里如何写入剪切板示例演示,pyqt5监听剪切板变动并写入剪切板内容
  4. js 数组/对象/日期的浅克隆
  5. Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient 1
  6. Android之华为手机打开app奔溃提示java.io.FileNotFoundException: res/drawable/abc_vector_test.xml
  7. php mysql5.7.110安装教程_MYSQL教程mysql5.7.19 winx64安装配置方法图文教程(win10)
  8. iproute2 对决 net-tools
  9. ubuntu11.04下安装TCL及TK
  10. html英文特殊字体代码,字体_中英文字体等(示例代码)
  11. 将voc2007数据集转换成yolo格式的数据集
  12. 华为服务器通过ilo虚拟光驱,如何通过ilo开启服务器远程桌面
  13. fgo7.27服务器维护,【FGO日服】维护通知(7/12)
  14. Ubuntu 14.04 解决 DNS 解析失败
  15. java xmx4g cp,jib 使用教程
  16. 企业为什么选择软件定制开发?
  17. 常见的状态码及错误信息提示
  18. SAP收购Sybase的真实意图或强化BI
  19. IDEA中Translation怎么使用
  20. GoLang之iface 和 eface 的区别是什么?

热门文章

  1. mysql 整理磁盘空间_mysql 数据库磁盘满了,进行碎片化整理的相关问题
  2. Android之获取Fragment和activity的宽和高
  3. 海康威视设备SDK调用,是否支持IP通道的思考
  4. Python第三方库tabulate简单使用说明
  5. 正则表达式验证手机号、身份证号
  6. 【北邮果园微处理器设计】gpio.c 应用解读(附gpio.c源码)
  7. 黑化的蜜雪冰城,凭营销就想抓牢消费者的心?
  8. c++用Beep发出声音
  9. 高通转单台积电,联发科的高端梦悬了
  10. 【研发工具】高效开发、办公工具汇总--持续更新