String用法

(1) StringBuilder:可变字符串类型(字符串:底层是字符数组,及其对数组的操作)

       特点:

          (1)此类型是final修饰的

             (2)没有重写equals方法

              (3)此类型提供的大多数方法都带有返回值

          即:return this,返回同一个地址,也即同一个对象

          构造器:

    @  StringBuilder();

      在main方法里面写法:

   StringBuilder str = new StringBuilder();//构造器

    构造了一个空的StringBuilder对象,初始容量为16.输出时输出的其实是16个"",引号里面的内容,因为里面没有内容,因此不显示输出信息;

    注意:输出为null时的条件是对象的地址信息为null,输出为null

@StringBuilder(String str);

创建一个指定字符串的StringBuilder对象

常用方法:int length();

返回有效字符的长度

如:

StringBuilder str= new StringBuilder();

System.out.println(str.length());//输出的是str的有效长度,虽然StringBuilder的初始容量为16,但是其有效字符是0个,所以输出为0;

StringBuilder str1 = new StringBuilder("helloworld");

System.out.println(str1.length());输出结果为10,有效字符长度为10;

StringBuilder append(Type a)://将参数a追加到StringBuilder对象里,返回此对象   对象还是这一个对象,只不过加了数据元素,因为StringBuilder是一个可变字符串类型

如:

StringBuilder str = new StringBuilde("你好);

String str1 = str.toString();

System.out.println(str1.toString());//System.out.println(str.toString().toString());这两段代码相当于最后一段代码,输出结果相同

这里的后缀toString()可以省略不写,因fanhingBuilder类型中重写了toString方法,不然不写

String(char[] ch)将字符数组转化成字符串对象,

如:char[] chs = {'h','e','l','l','o'};

String str = new String(chs);

System.out.println(str);//输出结果为hello,将字符拼接成字符串对象

@String(String str);

指定一个字符串字面量创建一个字符串对象

String str = new String("hello world");//输出结果为hello world,

@int length();//返回字符串对象的字符个数

如:

String str = new String("hello world");

System.out.println(str.length());//输出的是字符串的长度,空格也算一位

@char charAt(int index);

返回此字符数组指定下标处的索引处的字符,

例如:

String str  =new String("你好,世界");//获取数组下标为3的字符

char chs = str.charAt(3);

System.out.println(chs);//输出结果为,还有一种写法

System.out.println("你好,世界".charAt(3));

@String concat(String another);

j将指定字符串another拼接到此字符序列末尾段,返回新对象

例如:

String str = new String("hello");

String str1 = str.concat("world");//输出结果str1为helloworld

@boolean startWith(String prefix)/endWith(String suffix);

查看此字符串是否以prefix为前缀/以suffix为后缀

Scanner sc = new Scanner(System.in);

System.out.println("请输入一个网址:");

String str = sc.next();

if(str.startWith("https")){

System.out.println("这是一个安全网站:");

}else{

System.out.println("这不是一个安全网站");

}

System.out.println("请输入一个网站:");

String str1 = sc.next();

if(str1.endWith("edu")){

System.out.println("这是一个教育网站");

}else{

System.out.println("这不是一个教育网站");

}

用于判断前缀或后缀是否符合字符串,

@byte[] getBytes();

将此字符串按照默认字符集编码成字节序列,返回一个新的字节数组

String str = "小明";

byte[] bs = str.getBytes();

Ststem.out.println(Arrays.toString(bs));//这里要使用toString方法,因为这是一个byte类型的数组对象,不用toString方法返回的是地址信息

@byte[] getBytes(String charset);

这里是用按照指定的字符编码集来对字符串进行编码

,返回新的字节数组

===================================================================

@查找字符串中字符或子字符串的位置

int indexOf(int ch);

返回字符ch第一次在字符串中出现的位置;

String str  = "that girl";

int ch = str.indexOf('t');

System.out.println(ch);//还有一种写法

System.out.println(str.indexOf('t'));//这种是返回t在字符串中第一次出现的位置

如果我们想要返回t在字符串中的第二次下标

int index = str.indexOf('t',str.indexOf('t')+1)

表示从第一个t出现的下一个下标搜索第二个t的下标.

注意:如果返回的值是-1,表示我们想要搜索的字符在字符串中没有出现过

*******查找字符串数组下标

int indexOf(String str);

int indexOf(String str,int fromIndex);

表示我们要搜索的下标str从fromIndex下标开始第一次出现的位置

String str = "no zuo mo die";

int a = str.indexOf("zuo");

System.out.println(a);

截取子字符串的方法:

    String subString(int beginIndex)

截取从下标beginIndex处到尾端的字符串

String subString(int beginIndex,int endIndex);

截取下标为beginIndex到endIndex处下标的字符串

字符串转成字符数组的方法:

(1)char[] toCharArray(String str);

将指定字符串转化成字符数组

将字符串中的字母转化成大写/小写

String toUpperCase()//将字符串中的所有小写字符转化成大写字母

String toLowerCase()//将字符串中所有的大写字母转化成小写字母

前后去空格的方法:

String trim();

将字符串中前后空格去掉,中间的不去,属于字符元素

将任意参数变成字符串类型

static String valueOf(Type a);//可以是常量,也可以是布尔类型等任意类型

猜你喜欢

转载自blog.csdn.net/Peanut_508/article/details/81634631
今日推荐