一篇文章理清字符串基本操作

1.声明字符串

首先,在JAVA中字符串必须在""中使用,字符串常量可以显示任何系统能够显示的文字信息,当然单个字符也可以显示。
声明方式很简单:String str;即声明了一个叫做str的字符串变量。

2.创建字符串

因为JAVA语言中字符串是作为对象来管理的,因此在创建过程中,我们可以向创建其他对象一样创建。创建对象要使用类的构造方法。
(1)String(char[])
用一个字符数组来创建String对象
例子:

char a[] = {'j','a','v','a'};
String s = new String(a);

(2)String(char a[], int offset, int length)
提取a字符数组的一部分来创建一个字符串对象。offset表示截取的字符串位置,length表示长度。
例子:
char a[]={‘j’,‘a’,‘v’,‘a’};
String s = new String(a,2,3);
(3)简单的常量引用赋值
String str1;
str1=“JAVA”;

3.连接字符串

使用"+"可以连接多个字符串,“+”运算符可以连接多个运算符并且生成一个String对象。

String str1 ="JA";
String str2 = "VA";
String s = str1+str2+"你好!";

4.连接其他数据类型

字符串也可以与其他数据类型进行连接,如果同这些数据进行连接,会将这些数据变为字符串
例子:

int a = 8;
System.out.println("我每天睡觉"+a+"八小时");

5.获取字符串信息

1)获取字符串长度

length()方法可以获取声明的字符串对象长度。语法如下:

str.length();

查询str的长度

2)字符串查找

字符串查找包括正序查找和倒序查找,分别为indexOf()和lastindexOf()方法,前者是返回搜索字符串第一次出现的位置,后者返回搜索字符串最后一次出现的位置。语法如下:

int size = indexOf("a");

查询str中a第一次出现时的位置。
3)获取索引位置的字符
使用charAt()方法可以将指定索引处的字符返回。语法如下:

str.charAt(2);

查询str中第二个字符是什么。

6.字符串操作

1)获取子字符串
通过String类中的substring()方法可以实现字符串的截取操作。这些截取操作往往需要利用字符串的下标。(字符串的下标从0开始)
substring()方法有两种使用方式

  1. substring(int);从某一处截取至字符串结尾,语法如下:
str.substring(3);

从下标为三开始截取至结束。
2. substring(startint,endint);从开始下标截取到结束下标,语法如下:

str.substring(2,4);

截取str字符串从下标为2到下标为4。

2)去除空格

trim()可以忽略前导空格和尾部空格
语法:str.trim();

3)字符串替换
replace()方法可以替换字符
用法:str.replace(old,new);

4)判断字符串开头结尾
1.startsWith()方法
用法:str.startsWith();
2.endsWith()方法
用法:str.endsWith();
例子:

String str = "hellojava";
 boolean b1 = str.startsWith("hello");
 boolean b2 = str.endsWith("java");
 System.out.println("b1="+b1+" b2="+b2);

5)判断字符串是否相等
因为比较运算符“==”是比较地址是否相同的,但是即使两个字符串的内容相同,两个对象的内存地址也不同的,使用比较运算符仍然返回false。

因此比较我们往往采用equals()方法和equalsIgnoreCase()方法
用法:str.equals(String otherstr);
equalsIgnoreCase()方法与euqals()的区别是他不分大小写。
6)按字典顺序比较两个字符串

语法:str.compareTo(String otherstr);

7)大小写转换
toLowerCase()方法,toUpperCase()方法分别为大转小写,小转大写
语法:str.toLowerCase();str.toUpperCase();

8)字符串分割
split()方法进行分割
分割方式有两种,类似于前边所讲的取子字符串。
方法一:

String str = "hello.java.good";
 String first[] = str.split("\\.");
 String second[] = str.split("\\.",2);

方法二

String str = "hello.java.good";
 String[] first = str.split("\\.");
 String[] second = str.split("\\.",2);
  for(String a:first) {
   System.out.print("["+a+"]");
  }
  for(String a:second) {
   System.out.print("["+a+"]");
  }

第一个值是分的值,第二个是分成的份数。

7.字符串格式化

String类中的静态format()方法用于创建格式化的字符串。format()方法有两种重载形式。
语法如下:

str.format(String format,Object…args);

此条件中format为格式字符串,args为格式字符串中有格式说明符引用的参数。

str.format(Local l,String format,OBject…args);

多了一个 l,是格式化所需要的需要环境,null则不进行本地化。
例如:日期和时间字符串格式化

Date date1 = new Date();
 String s = String.format("%te", date1);
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值