当前位置: 首页 > news >正文

青岛工程建设管理信息网站下载玉溪市住房城乡建设局网站

青岛工程建设管理信息网站下载,玉溪市住房城乡建设局网站,中国十大著名战略咨询公司,天津高端网站建设公司一、String类 1.字符串对象 String str new String("hello");String对象是final修饰的,不可修改的,修改后的字符串对象是另外一个对象,只是修改了引用地址。每次创建都会创建一个新的对象。 2. 字面量 String s "hello&…

一、String类

1.字符串对象

String str = new String("hello");

String对象是final修饰的,不可修改的,修改后的字符串对象是另外一个对象,只是修改了引用地址。每次创建都会创建一个新的对象。

2. 字面量

String s = "hello";

存储在方法区常量池中,只有1份。

3. 创建方式

①new String(“abc”);
②String str = “abc”;
③char[] chs = {‘a’, ‘b’, ‘c’};
④String(char[] chs);
⑤String(char[] value, int offset, int count);
⑥String(byte[] bytes);
⑦String(byte[] bytes, String charsetName);//按编码格式转换
⑧String str = “” + 任何类型;对象会调用toString()方法

二、String的常用方法

1. 基本操作

函数名作用
isEmpty()字符是否为空
length返回字符的个数
concat()拼接字符串,等价于+
equals()比较两个字符串是否相等
equalsIgnoreCase()忽略大小写比较大小
compareTo()返回int, 正数大于,负数小于,0相等
compareToIgnoreCase()忽略大小写
toLowerCase()转换为小写字母
toUpperCase()转换为大写字母
trim()去掉字符串前后空白符

2. 查找

函数名作用
contains(String str)是否包含另一个字符串str
indexOf(String str)查找另一个字符串第一次出现的位置
lastIndexOf(String str)查找另一个字符串最后 出现的位置
indexOf(String str, int from)从某个位置开始查找另一个字符串第一次出现的位置

3. 字符串截取

函数名作用
subString(int begin)从begin开始截取一个字符串
subString(int begin, int end)按区间截取,左闭右开
lastIndexOf(String str)查找另一个字符串最后 出现的位置
indexOf(String str, int from)从某个位置开始查找另一个字符串第一次出现的位置

4. 字符相关

函数名作用
charAt()获取字符串相应位置的字母
toCharArray()将字符串转换为一个新的字符串数组
String(char[] value)将字符串数组转换为字符串
String(char[] chs, int offset, int count)从某个位置开始转换为字符串返回
copyValueOf(char[] data)静态方法,字符数组变字符串
copyValueOf(char[] data, int offset, int count)将部分数组转换为字符串

5. 编码与解码

函数名作用
getBytes()编码:把字符串变成字节数组
getBytes(编码方式)编码:按编码格式进行转换
String(byte[] bytes)解码:把字节数组转换为字符串
String(byte[] bytes, String codingSet)解码:按指定格式进行解码

6. 字符串格式匹配(正则)

函数名作用
startWith(String str)是否以str开头
endWith(String str)是否以str结尾
matches(String regex)使用正则表达式验证字符串
正则表达式含义
[0-9]表示0到9之间的任意一个数值
\d数字
\D非数值
\w字符
\W非字符
+出现1次或多次
1次或0次
*任意次
{ n }出现n次
{5,10}5到10次
{5,}至少5次

7. 替换与拆分

函数名作用
replace(String str, String str2)将字符串中的str替换成str2
replaceFirst(String 正则, value)替换第一个匹配部分的字符串
replaceAll(String regex, value)替换所有匹配部分
split(String regex)按照某种规则进行拆分,支持正则

注: “abc”拆分为“a”, “b”,“c” = s.split(“|”)

三、字符串的内存

1. 内存分析

对象和字母量的内存分析
考察例题:
底层分析
解析:

只有两个字面常量使用加号连接,编译器自动优化为一个字母量,其余情况都会创建一个新的对象。

分析

String变量加final修饰时就可以当做字面常量,编译器也会自动优化,不会创建新的对象。

String 变量加final修饰

这个是编译后的字节码文件,参考底层代码可以看到一些我们无法发现的细节。
在这里插入图片描述

2. intern方法

用来检查该字符串常量在字符串常量池中是否有该字符串常量, 有的话直接返回该字符串, JDK8之后,没有的话将自己的引用放进去后再返回一个字符串,没有创建新的字符串对象。JDK6之前,如果没有的话,在字符串常量池中创建一个副本并返回。

String s = "hello";
String intern = s.intern();//这句代码在堆中和字符串常量池中都创建了对象
String s = new String("hello");
String intern = s.intern();

四、StringBuffer和StringBuilder

1. 与String的区别

需要频繁修改字符串时,可以使用可变长字符串。该类型字符串修改时不需要创建新的字符串对象。StringBuffer是线程安全的,StringBuilder是线程不安全的。

2. 常用方法

①append(String str): 拼接字符串,返回值还是StringBuilder自己本身。
②reverse(): 字符串反转。
③toString(): 返回一个String对象。
④new StringBuilder(str): 将字符串转换为StringBuilder对象。

http://www.yayakq.cn/news/350123/

相关文章:

  • 怎么做网站推广林芝地区晋城做网站的公司
  • 北京wap网站开发如何查询网站空间商
  • 京东门户网站怎么做如何建一个简单的网站
  • 织梦cms网站模板制作网页时
  • 网站效益分析wordpress生成
  • 上海网站备案号查询九江网站建设
  • 江苏网站建设网络公司谷歌搜索为什么用不了
  • 河东手机站如何做adsense网站
  • wordpress全站ajax代码阿里云网站备案要多久
  • 网站建设学什么语言编辑好做网站公司 郑州
  • 凡科建站的建站后如何管理做照片书的模板下载网站好
  • 层流病房建设单位网站集安网站制作
  • 长沙做网站开发价格wordpress轮翻图参数
  • 已注册的网站如何注销开发一款app需要多少钱?
  • p2p电影网站开发如何推销自己的产品
  • 自己怎样做网站那些企业网站做的较好
  • 南宁建站模板展示网站木马 代码
  • 网站建设免费加盟代理营销推广方案
  • 滑县网站建设报价网站使用帮助
  • 电子商务网站有哪些内容自助建站管理平台
  • 建站快车的优点网站开发培训达内
  • 海尔建设此网站的目的是什么东莞微信网站开发
  • 佛山产品推广嘉兴做网站seo
  • 网站右下角图片广告代码遵义网站开发的公司
  • 网页版梦幻西游好玩吗新网站怎么做优化
  • 什么网站可以接单做设计湖北短视频seo
  • 郑州网站制好用的黄页网
  • 专业做网站建设公司有哪些WordPress做漫画网站
  • iis 5 如何添加网站手机网站建设专家
  • 哪个网站可以免费做网页公司网站制作专业公司