Java-String字符串相关常用方法

String -字符串

  字符串,在Java当中,可以理解为一串字符(char)

  在Java中的双引号大多数表示的是字符串,单引号大多数表示的是字符

    

    

   一:字符串的多种创建方式

//1.无参对象创建
String str1 = new String();
System.out.println(str1);//str1是无参对象方式创建,空字符串
//2.字符对象创建
char[] chararray = {'a','b','c'};
String str2 = new String(chararray);
System.out.println(str2);//str2是字符对象构造,所以输出为"abc"
//3.字节数组创建
Byte[] bytearray = {97,98,99};
String str3 = new String(bytearray);
System.out.println(str3);//str3是字节对象构造,所以输出为"abc"(这里传入的是ASCII码的97对应的是小写的abc)
//4.直接双引号写出字符串
String str4 = "abc";

  二:字符串常量池的概念

  先看看这个案例

 String str11 = "abc";
 String str22 = "bc";
 char[] arr = {'a','b','c'};
 String str33 = new String(arr);
 System.out.println(str11==str22);//true
 System.out.println(str11==str33);//false

  在Java中 "=="是比较对象的内存地址是否相等,但是str11和str22虽然是直接双引号写出来的,但是也是new出来的对象,那为什么都是new出来的,str11和str22内存地址相等,str11和str33内存地址不一样呢?

  

  三.字符串比较相关方法

    1.public Boolean equals(Object obj):比较字符串的值

    2.public Boolean equalsIgnoreCase(Object obj):忽略英文大小写比较字符串的值

String aa = "asd";
String cc = "Asd";
char[] array = {'a','s','d'};
String bb = new String(array);
System.out.println(aa.equals(bb));
System.out.println(aa.equalsIgnoreCase(cc));//忽略大小写

   四.字符串获取相关方法

    1.public int length();获取字符串当中含有字符的个数,拿到字符串的长度
2.public String concat(String str):将当前字符串和参数字符串合并并且返回新的字符串
3.public char charAt(int index):获取字符串指定索引的单个字符
4.public int indexof(String str):查找参数字符串当中首先出现的索引位置
//字符串长度
String name = "baiboy";
System.out.println(name+"字符串的长度为"+name.length());
//拼接字符串 String s = "nameis"; System.out.println(s.concat(name)); //获取name中索引为1的字符 System.out.println(name+"索引为1的字符"+name.charAt(1)); //获取name中首次出现字符 b的位置 System.out.println(name.indexOf('b'));

  五:字符串中与截取相关方法

   1.public String substring(int index):截取指定索引到字符串结尾的子字符串并返回
   2.public String substring(int begin, int end):截取指定索引开始到指定索引结束的子字符串,(包头不包尾)

String demo = "demo";
System.out.println(demo.substring(0));//只有一个参数的时候,默认到尾部结束
System.out.println(demo.substring(0,2));//指定开头和结尾的索引,包头不包尾部
  六.字符串中与转换相关方法
1.public Char[] toCharArray():字符串转换为字符数组作为返回值
2.public Byte[] getBytes():字符串返回字节数组作为返回值
3.public String replace(String oldstr,String newstr):新字符串替换旧的字符串
System.out.println("=====================");
String test = "my name is xiaobai";
char[] chars = test.toCharArray();
byte[] bytes = test.getBytes();
System.out.println(chars);
System.out.println(bytes);
System.out.println(test.replace("xiaobai","baiboy"));
 

  

猜你喜欢

转载自www.cnblogs.com/bai-boy/p/12169167.html