String操作 判空 、拼接

定义

String e="";
String greeting="Hello";

子串

String类的substring方法可以从一个较大的字符串提取出一个子串。

String greeting="Hello";
String s=greeting.substring(0,3);//Hel

在substring中,第一个参数是开始位置的索引,从0开始;第二个参数是不想复制的第一个位置。字符串s.substring(a,b)的长度为b-a。

上面的含义是从0开始,直到3为止,不包含3.

String为不可变字符串

事例:将”Hello“的最后两个位置的字符修改为”p“和”!“;

C语言实现较为困难,java可以利用拼接完成

        String greeting="hello";
        System.out.println(greeting);//hello

        greeting=greeting.substring(0,3)+"p!";
        System.out.println(greeting);    //help!

 拼接

Java语言允许使用+号连接(拼接)两个字符串

int age=13;
String rating="PG"+age;//PG13

当将一个字符串与一个非字符串的值进行拼接时,后者被转换成字符串。(任何一个Java对象都可以转换成字符串)

如果需要把多个字符串放在一起,用一个定界符分割,可以使用静态join方法

String all=String.join("/","S","M","L","XL");//"S/M/L/XL"

构建字符串

每次连接字符串,都会构建一个新的String对象,既耗时,又浪费空间。使用StringBuilder类就可以避免这个问题的发生。

使用许多小段的字符串构建一个字符串。具体步骤:
 

//1.创建一个空的字符串构造器;
StringBuilder builder=new StringBuilder();
//2.每次需要添加一小部分内容时,就调用append方法。
builder.append("ch");
builder.append("ina");
//3.小字符串拼接结束构建字符串时,调用toString方法,得到一个String对象。
String s=builder.toString();//china

StringBuilder与StringBuffer

StringBuffer 是StringBuilder的前身,其效率有些低,但允许采用多线程的方式执行添加或删除字符的操作。

StringBuilder在JDK5.0中引入,适用于 所有字符串在一个单线程中编辑的场景(通常都是这样的场景)

StringBuilder和StringBuffer两个类的API是相同的。

字符串是否相等的检测

可以使用equals方法检测两个字符串是否相等:  s.equals(t)

如果字符串s与字符串t相等,则返回true;否则,返回false。

"Hello".equals(greeting)

要想检测两个字符串是否相等,而不区分大小写,可以使用equalsIgnoreCase方法。

"Hello".equalsIgnoreCase("hello")

一定不要使用==运算符检测两个字符串是否相等!这个运算符只能够确定两个字符串是否放置在同一个位置上。

空串与Null串

空串""是长度为0的字符串。[空串是一个Java对象,有自己的串长度(0)和内容(空)]

if(str.length()==0)

除此之外,该位置可能会存放一个特殊的值,null   [表示目前没有任何对象与该变量关联],如何检查一个字符串是否为null

if(str==null)

检查一个字符串既不是null也不为空串:

if( str!=null&&str.length()!=0 )

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

算法打怪中

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值