String类的字符串转换功能 API深入研究4.0

目录

字符串的转换功能:

byte[] getBytes()

char[] toCharArray()

static String valueOf(char[] chs)

static String valueOf(int i)

String toLowerCase()

String toUpperCase()

String concat(String str)


点击下方链接学习更多的String类 API深入研究

字符串String API深入研究1.0

Sring类的判断功能 API深入研究2.0

String类的获取功能 API深入研究3.0

String类的替换功能、去除字符串两端空格、按字典顺序比较两个字符串 API深入研究5.0


 在我们企业的日常开发中,String类是每天都会去使用的高频类,那么我们来深入探索一下。(个人参考API文档编写,仅供学习参考)

字符串:简单理解,就是由多个字符组成的数据,叫做字符串;也可以看作是一个字符数组。

观察API发现:

1、String代表的是字符串,属于java.lang下面的。所以使用的时候不需要导包。

2、String类代表字符串,Java程序中的所有字符串文字(例如"abc"),都被实现为此类的实例(对象)。

3、字符串不变:它们的值在创建后不能被更改,字符串是常量,一旦被赋值,就不能改变。

注意事项:String类重写了toString()方法。


字符串的转换功能:


byte[] getBytes()

查看API文档我们知道:

  使用平台的默认字符集将此String编码为字节序列,将结果存储到新的字节数组中。

当该字符串不能在默认字符集中编码时,此方法的行为是未指定的。 当需要对编码过程进行更多控制时,应使用CharsetEncoder类。

结果

结果字节数组

参考代码1:

public class testStringDemo1 {
    public static void main(String[] args) {

        String s = "HelloWorLD";

        //byte[] getBytes()
        //使用平台的默认字符集将此String编码为字节序列,将结果存储到新的字节数组中。
        byte[] b1 = s.getBytes();
        System.out.println(b1); 

    }
}

[B@4554617c

Process finished with exit code 0

从参考代码1的运行结果可以看出输出的结果是地址值。

那么我们将b1进行遍历

参考代码2:

public class testStringDemo1 {
    public static void main(String[] args) {

        String s = "HelloWorLD";

        //byte[] getBytes()
        //使用平台的默认字符集将此String编码为字节序列,将结果存储到新的字节数组中。
        byte[] b1 = s.getBytes();
        System.out.println(b1); //[B@4554617c
        for(int i=0;i<b1.length;i++){
            System.out.println(b1[i]);
        }

    }
}

[B@4554617c
72
101
108
108
111
87
111
114
76
68

Process finished with exit code 0

从参考代码2的运行结果可以看出,经过遍历后是将"HelloWorLD"对应的Ascall码值输出出来。

注意:要谨记结论,以免混淆(多使用,多敲)


char[] toCharArray()

查看API文档我们知道:

  将此字符串转换为新的字符数组。

结果

一个新分配的字符数组,其长度是该字符串的长度,其内容被初始化为包含由该字符串表示的字符序列。

参考代码:

public class testStringDemo1 {
    public static void main(String[] args) {

        String s = "HelloWorLD";

        //char[] toCharArray()
        //将字符串转换成字符数组,字符串 --> 字符数组
        char[] c1 = s.toCharArray();
        for(int i=0;i<c1.length;i++){
            System.out.print(c1[i]);
        }

    }
}

HelloWorLD
Process finished with exit code 0 

从参考代码的运行结果来看,char[] toCharArray()就是将字符串转换成字符数组,

字符串---->字符数组


static String valueOf(char[] chs)

查看API文档我们知道:

返回 char参数的字符串 char形式。

参数

c - a char

结果

长度为 1的字符串以其单个字符包含参数 c

顾名思义;

就是将字符数组转换成字符串

参考代码:

public class testStringDemo1 {
    public static void main(String[] args) {

        String s = "HelloWorLD";

        char[] c1 = s.toCharArray();

        //static String valueOf(char[] chs)
        //将字符数组转换成字符串
        String s1 = String.valueOf(c1);
        System.out.println(s1);
        
    }
}

 HelloWorLD

Process finished with exit code 0


static String valueOf(int i)

查看API文档我们知道:

返回int参数的字符串int形式。

该表示恰好是一个参数的Integer.toString方法返回的表示。

参数

i - int

结果

一个字符串表示的 int参数。

顾名思义:

就是将int类型的数据传换成字符串类型。

参考代码:

public class testStringDemo1 {
    public static void main(String[] args) {

        //static String valueOf(int i)
        //将int类型的数据转换成字符串类型
        String s2 = String.valueOf(100);
        System.out.println(s2);

        String s3 = String.valueOf(2048);
        System.out.println(s3);

    }
}

100
2048

Process finished with exit code 0


String toLowerCase()

查看API文档我们知道:

  将所有在此字符String使用默认语言环境的规则,以小写。 这相当于打电话toLowerCase(Locale.getDefault())

注意:此方法是区域设置敏感的,如果用于单独解释区域设置的字符串,可能会产生意外的结果。 示例是编程语言标识符,协议密钥和HTML标签。 例如, "TITLE".toLowerCase()在土耳其语言环境返回"t\u0131tle" ,其中“\ u0131”是拉丁小写字母无点我的性格。 要获取区域设置不敏感字符串的正确结果,请使用toLowerCase(Locale.ROOT)

结果

String ,转换成小写。

顾名思义:

就是将字符串中的内容全部转换成小写。

参考代码:

public class testStringDemo1 {
    public static void main(String[] args) {

        String s = "HelloWorLD";

        //String toLowerCase()
        //将字符串中的内容全部转换成小写
        String s1 = s.toLowerCase();
        System.out.println(s1);

    }
}

 helloworld

Process finished with exit code 0


String toUpperCase()

查看API文档我们知道:

  将所有在此字符String使用给定的规则,大写Locale 。 案例映射基于Character类指定的Unicode标准版本。 由于案例映射并不总是1:1的字符映射,所以String可能与原始的String

区域设置敏感和1:M情况映射的示例如下表所示。

Language Code of Locale Lower Case Upper Case Description tr (Turkish) \u0069 \u0130 small letter i -> capital letter I with dot above tr (Turkish) \u0131 \u0049 small letter dotless i -> capital letter I (all) \u00df \u0053 \u0053 small letter sharp s -> two letters: SS (all) Fahrvergnügen FAHRVERGNÜGEN

参数

locale - 使用此区域设置的案例转换规则

结果

String ,转换成大写。

顾名思义:

就是将字符串中的内容全部转换成大写。

参考代码:

public class testStringDemo1 {
    public static void main(String[] args) {

        String s = "HelloWorLD";

        //String toUpperCase()
        // 将字符串中的内容全部转换成大写
        String s4 = s.toUpperCase();
        System.out.println(s4); //HELLOWORLD

    }
}

 HELLOWORLD

Process finished with exit code 0


String concat(String str)

查看API文档我们知道:

  将指定的字符串连接到该字符串的末尾。

如果参数字符串的长度为0 ,则返回此String对象。 否则,返回一个String对象,表示一个字符序列,该字符序列是由该String对象表示的字符序列与由参数字符串表示的字符序列的级联。

例子:

 "cares".concat("s") returns "caress"
 "to".concat("get").concat("her") returns "together"

参数

str - String被连接到这个 String

结果

一个字符串,表示此对象的字符后跟字符串参数的字符的并置。

顾名思义:

就是将小括号中的字符串拼接到大写字符串的后面。

参考代码:

public class testStringDemo1 {
    public static void main(String[] args) {

        String s = "HelloWorLD";

        //String concat(String str)
        //将小括号中的字符串拼接到大字符串的后面
        String s5 = s.concat("hadoop");
        System.out.println(s5);

    }
}

 HelloWorLDhadoop

Process finished with exit code 0


到底啦!给靓仔一个关注吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

liangzai2048

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值