java类对象转化成字符串_JAVA-初步认识-常用对象API(String类-常见功能-转换)

一.

除了获取以外,还有第二部分,就是转换,可以将字符串变成很多东西。这些方法都是最常用的。

2. 转换

2.1 将字符串变成字符串的数组(用的是字符串的切割)

返回的肯定是一个数组,参数列表是什么?应该交代切成几份。这块比较特殊,应该是按照什么规则切,这里面传递的应该是一个规则,可以用一个字符串表示这个规则。

8c7fe74a10f8bae680759ae3b1beec98.png

这里面传递的是正则表达式,目前还没有学到。后期会深入地讲解这个功能,现在先简单地认识一下。

通常一个字符串,如果想要取出某一部分的子串,标定起始位和尾位。如果取得字串多的话,很麻烦。

直接采用split方法切取,用","来切,变成三段,可以将三份取出来。

2098d90bca74321acd7f84ff6f52fd3a.png

824dc4c28b8824e54b82ff318bd80a64.png

如果符号是点号.的话,使用"."切不开。

8d93af02adb1a913bd87839a82546e8c.png

这函数里面不是普通字符串,这个往里面放的是规则,这个规则可以放普通规则,也可以放指定规则。指定的就是正则的,复杂规则。而这个点号就是正则中的一个特殊符号,它不是普通点,这么切不行。那怎么办呢?以后会讲述到的。

如果非要现在切的话,把点号转印一下,给它转印成普通点就行了。\.是把点号转印成普通符号,如果要在字符串中出现单个的反斜线,将这个反斜线也要转印一下,因此就是\\.的形式。

0a2efb3b6800e742f02657543a67b049.png

729f3c1b57feeec888da12762f030b1e.png

切割动作会涉及到正则表达式。

2.2 将字符串变成字符数组

返回值类型是char,参数列表为空,是对象自己的方法,而且是对整个字符串对象进行处理。

54837f8d2805b7a5fb2fe06da06cc960.png

55db5ee656e4069590cc6f0670958c6b.png

da24b6a73af07043d8e1150111da1b89.png

2.3 将字符串转成字节数组

现在接着将字符进行粉碎,打成最小单位,最小单位是字节,一个字符是两个字节,接着往小的单位粉碎。

返回是字节数组,因为返回多个字节,

d7dee1d4a2c4560675b2437f4224ee19.png

6ade4d4d5ff55e9fc44d01dd583b6957.png

"ab你"这个字符串中有四个字节,a和b都是一个字节,而"你"是两个字节。DOS的结果中97和98是理解的,但是-60和-29是怎么来的?

阿斯科码表(美国标准信息交换码)里面记录的是字母,数字和符号,中文的GB2312记录了中文和二进制的对应关系,中文怎么编码的呢?一个中文对应两个字节来的,而且这两个字节最高位都是1,所以才是负数。什么数据到计算机里面都是二进制。

2.4 将字符串中的字母转变成大小写

这个东西转完之后有结果吗?是有的,比如说我有abc小写,在常量池里面。我调用一个方法,它就变成了大写ABC,小写abc是不变的。字符串常量一旦初始化后,将不能改变,所以它必须返回一个新的。在原有的字符串常量上修改就出事儿了。

c20b5d2def5a356598240bb3ba1be518.png

5acd57ebef40a30156e5711a6d669a68.png

4400ca6032d1de636b78e223cfb26350.png

2.5 将字符串中的内容进行替换

替换完有结果,

c3897664e65c7462724bc55c730f9f96.png

8778d8fec9cf96572f46f867935da0c4.png

32da7201a286e0ee7190ca70f5f15c36.png

cae1cbe50733b0db236a7051ce9d4633.png

如果是将"q"改成"o",结果不变,还是"java"。没找着,就说明没替换成功,这东西就还是原来的字符串。

7edfba1470427a4fd3d2999ca45efe06.png

结果是true,"java"是在常量池里面,替换这么一弄返回的还是原先的字符串,如果没有改变的话。没变的话,字符串就实现了共享,如果改变了,常量池中就有了新的,

ca0d85c00f318cf3e044715c7020005a.png

还能替换字串,

12e416f6dceefb8345f71d123383a965.png

截图中的CharSequence是字符序列。

ffe03e420c51fad71a0a50ffaeb7e20d.png

截图中应该是将两个字符串整体进行替换。

2b406b9ae96bed716fcb50fb2252b501.png

还有一种转换,可以将字符串变成一个新的字符串的,如下

aaac24bce08c88c946b98dfb91fde6e3.png

这个trim方法在开发的时候非常的有用,

1f7b7f587ddf09b0d71cceac2c220d27.png

877a4a897555e374cd8f6fee267f26c8.png

bbcce9b24ef51197613823566de23e0e.png

330c8d0109d4b659a64c5432579b8f29.png

这个方法可以将字符串两端的空格给取消了,中间的保留了。这个方法的好处在哪儿?对输入进行一次trim操作,防止有人在输入时最后敲击了空格。

2.7 将字符串进行连接

String concat (string)

53a8cd6c5f2803a6e4c48f65a609bfa8.png

90ab48bb8c0e6b0fbbdb13ff319ff0f8.png

7136354d0a5d4f12c68f5beb7f93d246.png

两种操作结果都一样,但是采用contact是面向对象的操作。

想把字符数组变成字符串,得要静态方法,

c06a2f2b8757adb9a36e345c6bb859e7.png

转换里面还一些其他的方法。字符串里面有一堆厉害的静态方法,valueof可以将基本数据类型变成字符串,可以将布尔型数据变成字符串型,看下面的例子

System.out.pritnln(String.valueOf(4)+1); 结果为41,这里的4变成了字符了。

66c0440a9c22d392fc04ac045da9c1ae.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值