第27天学习打卡

String 类

成员方法

int length():

获取当前字符串的长度

char charAt(int index):

获取指定索引位置的字符

int indexOf(String):

获取指定字符(串)第一次出现的索引

int lastIndexOf(String):

获取指定字符(串)最后一次出现的索引

String substring(int):

获取指定索引位置(含)之后的字符串

String substring(int, int):

获取从索引start位置(含)起止索引end位置(不含)的字符串

image-20210204185627287

 package cn.itcast.demo05;
 /*
     String类的获取功能:
             int length(): 获取当前字符串的长度
             char charAt(int index): 获取指定索引位置的字符
             int indexOf(String):获取指定字符(串)第一次出现的索引
             int lastIndexOf(String):获取指定字符(串)最后一次出现的索引
             String substring(int):获取指定索引位置(含)之后的字符串
             String substring(int, int):获取从索引start位置(含)起至索引end位置(不含)的字符串
  */
 
 public class Test {
     public static void main(String[] args) {
         //定义一个字符串
         String str = "java 黑马程序员 java";
 
 
         //int length(): 获取当前字符串的长度
         int length = str.length();
         System.out.println(length);
         //System.out.println(str.length());这是打印int length()的另外一种方法
 
 
         //char charAt(int index): 获取指定索引位置的字符
         char ch = str.charAt(1);
         System.out.println(ch);
 
         //int indexOf(String):获取指定字符(串)第一次出现的索引
         //需求:字符'a'第一次出现的位置
         int index1 = str.indexOf('a');
         System.out.println("index1: " + index1);
 
         //int lastIndexOf(String):获取指定字符(串)最后一次出现的索引
         int index2 = str.lastIndexOf('a');
         System.out.println("index2: " + index2);
         //String substring(int):获取指定索引位置(含)之后的字符串
         //需求:截取从索引5开始的所有元素
         String s1 = str.substring(5);
         System.out.println("s1: " + s1);
 
         //String substring(int, int):获取从索引start位置(含)起至索引end位置(不含)的字符串
         String s2 = str.substring(5,10);//打印结果为“黑马程序员”,包含第一个索引,不包含最后一个索引
         System.out.println("s2: " + s2);
    }
 }
 

成员方法

byte[] getBytes():

将字符串转换成字节数组

char[] toCharArray():

将字符串转换成字符数组

static String valueOf(..):

将指定数据转换成字符串

String replaced(old,new):

将指定字符(串)替换成新的字符(串)

String[] split(String):

切割字符串,返回切割后的字符串数据,原字符串不变

String trim():

去掉字符串两端的空白字符

image-20210204194312792

 package cn.itcast.demo06;
 
 /*
 String类的转换功能:
               byte[] getBytes():将字符串转换成字节数组
               char[] toCharArray():将字符串转换成字符数组
               static String valueOf(..):将指定类型转换成字符串
               String replace(old, new):将指定字符(串)替换成新的字符(串)
               String[] split(String):切割字符串,返回切割后的字符串数据,原字符串不变
               String trim():去掉字符串两端的空白字符
  */
 
 import java.nio.charset.StandardCharsets;
 
 public class Test {
     public static void main(String[] args) {
         //定义一个字符串
         String s1 = "abc";
         //byte[] getBytes():将字符串转换成字节数组
         byte[] bys = s1.getBytes();//a:97 b:98 c:99返回的是字符对应的数字形式
         for(int i = 0; i < bys.length; i++){
             System.out.println(bys[i]);
        }
         System.out.println("==============");
 
         //char[] toCharArray():将字符串转换成字符数组
         char[] chs = s1.toCharArray();
         for(int i = 0; i < chs.length; i++){
             System.out.println(chs[i]);
        }
         System.out.println("==================");
         //static String valueOf(..):将指定类型转换成字符串
         //整数123--->字符串"123"
         String s2 = String.valueOf(123);
         System.out.println(s2 + 4);//字符串与数字4的拼接
         //在实际开发中,上述的方式基本上都会用下边的这行代码替代
         String s3 = "" + 123;
         System.out.println(s3 + 4);
         System.out.println("=====================");
 
         //String replace(old, new):将指定字符(串)替换成新的字符(串)
         String s4 = "abc abc abc";
         String s5 = s4.replace('b','d');
         System.out.println("s5: " + s5);
         System.out.println("==================");
 
         //String[] split(String):切割字符串,返回切割后的字符串数据,原字符串不变
         //将字符串s4进行空格切割 因为s4里面有两个空格,所以会被切割两次,即s4由原本的一个变成了三个
         String[] arr = s4.split(" ");
         for(int i = 0; i < arr.length; i++){
             System.out.println(arr[i]);
        }
         System.out.println("===================");
         //String trim():去掉字符串两端的空白字符
         String s6 = " a b c ";
         String s7 = s6.trim();
         System.out.println("s6:" + s6);
         System.out.println("s7:" + s7);
 
 
 
    }
 
 
 }
 
 

D:\Java\JDK8\bin\java.exe "-javaagent:D:\IDEA\IntelliJ IDEA 98

99

a b

c

1234

1234

s5: adc adc adc

abc abc

abc

s6: a b c s7:a b c

Process finished with exit code 0

 

 package cn.itcast.demo07;
 /*
 StringBuilder:
             简介
                可变字符序列,用于构造字符串对象,内部使用自动扩容的数组操作字符串数据。StringBuilder和StringBuffer使用相同的API
             构造方法
                 StringBuilder(): 构造一个空的StringBuilder容器
                 StringBuilder(String):构造一个StringBuilder容器,并添加指定字符串
             成员方法
                 StringBuilder append(...): 将任意数据添加到StringBuilder容器中,返回自身
                 String toString():   将当前StringBuilder容器转成字符串
 
  */
 
 public class Test {
     public static void main(String[] args) {
         //测试构造方法
         //测试空参构造
         StringBuilder sb = new StringBuilder();
         StringBuilder sb2 = sb.append("abc");
         System.out.println("sb: " + sb);
         System.out.println("sb2: " + sb2);
         System.out.println("==================");
         //需求:将String类的"abc"转成StringBuilder类型的对象
         StringBuilder sb3 = new StringBuilder("abc");
         System.out.println("sb3: " + sb3);//把字符串类型的abc转换为StringBuilder类型的对象
         System.out.println("=======================");
 
 
         //测试成员方法
         //需求:将三个字符串拼接成一个新的字符串:学Java, 传博客 找小黑!
         StringBuilder sb4 = new StringBuilder();
         sb4.append("学java,");
         sb4.append("传博客");
         sb4.append("找小黑");
         System.out.println("sb4: "  + sb4);
         System.out.println("==============");
         String s = sb4.toString();
         System.out.println("字符串s:" + s);
    }
 }
 

输出结果:

sb: abc

sb2: abc

sb3: abc

sb4: 学java,传博客找小黑

字符串s:学java,传博客找小黑

Process finished with exit code 0

 

 

 

 

 

 

 

 

 

 

 

StringBuilder和StringBuffer类

简介

可变字符序列,用于构造字符串对象。内部使用自动扩容的数组操作字符串数据。StringBuilder和StringBuffer使用相同的API。

构造方法

StringBuilder():

构造一个空的StringBuilder容器

StringBuilder(String):

构造一个StringBuilder容器,并添加指定字符串

成员方法

StringBuilder append(...):

将任意数据添加到StringBuilder容器中

String toString():

将当前StringBuilder容器转成字符串

 

posted @ 2021-02-04 21:32  豆豆tj  阅读(57)  评论(0)    收藏  举报