黑马程序员-String

黑马程序员-String

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------

描述: java中的字符串类型描述类,常见的数据类型,很多种语言都有对字符串类型的描述和功能的定义。

特点:一旦被初始化,就固定不变。

对字符串常见的操作如下:

        1.获取

           1-1 字符串中包含的字符个数,即字符串的长度。 int length()  eg:"abc".getLength()

           1-2 根据位置获取某个字符 char charAt(int index)

           1-3 根据字符获取该字符在字符串中的位置

                 int indexOf(int char)  返回的是char在字符串中第一次出现的位置。

                 int indexOf(int char,int fromIndex) 从fromIndex指定位置开始,获取char在字符串中的位置。

                 int indexOf(String str)  返回字符串str在字符串中第一次出现的位置。

                 int indexOf(String str,int fromIndex) 从指定位置开始返回str在字符串中出现的位置。

                 int lastIndexOf(int char) 返回char最后一次出现在字符串中的位置。

        2.判断

           2-1 字符串中是否包含某一指定的子串

                  boolean contains(String str)

                  注:也可以用indexOf方法,如果indexOf方法返回-1,则表示该字符串中不包含指定的子串。

           2-2 字符串中是否有内容

                 boolean isEmpty() 判断字符串是否为空。

           2-3 字符串是不是以指定内容开头

                 boolean startsWith(String str)

           2-4 字符串是否以指定内容结尾

                 boolean endsWith(String str)

           2-5 字符串内容是否相同,复写了Object类中的equals方法

                 boolean equals(String str)

           2-6 忽略大小写判断内容是否相同

                 boolean equalsIgnoreCase(String str)

      3.转换

           3-1 将字符数组转换为字符串

                 构造函数方式:String(char[] arr)

                                          String(char[] arr,int offset,int count)将字符数组中的一部分转换为字符串。

                  静态方法:    static String copyValueOf(char[] arr)

                                        static String copyValueOf(char[] arr,int offset,int count)

           3-2 将字符串转成字符数组

                    char[] toCharArray()

           3-3 将字符串转成字节数组

                    byte[] getBytes()字符串在转换字节数组过程中可以指定编码表

           3-4 将字节数组转成字符串

                   new  String( byte[] bytes)

                   new  String(byte[] bytes,int offset,int count)

           3-5 将基本数据类型转成字符串

                  static String valueOf(int i)

                  static String valueOf(double d)

      4.替换

          4-1替换  String replace(char oldchar,char newchar)

     5.切割

          5-1切割  String[] split(String regex)

    6.截取

          6-1截取  String substring(int begin)

                        String substring(int begin,int end)

    7.转换,去除空格,比较

          7-1 将字符串转换成大小写

                    String toUpperCase()

                    String toLowerCase()

          7-2 去除字符串两端空格

                    String trim()

          7-3 对两个字符串进行自然顺序比较

                    int compareTo(String str)

下面是对字符串String类型的相关拓展与延伸:

       1.String s=new String("ab")这句话在内存中创建了几个对象?

           分析: 在Java中凡用""括起来的都是字符串常量,也就是说为String对象。

                       在java中用new关键字会在内存中创建新的对象。

            回答:  所以String s=new String("ab")这句话在内存中共创建了两个对象。

        2.String s ="a"+"b"+"c"这句话在内存中共创建了几个对象?

            回答: 在内存中创建了一个对象。

            分析:因为java编译器会对字符串常量表达式做相应优化("a"+"b"+"c"为常量表达式),所以在编译时编译器会将String s ="a"+"b"+"c"优化为 String s="abc"这种形式。因此说String s ="a"+"b"+"c"这句话在内存中共创建了一个对象。

 ---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值