JavaSE-String API 转换功能

来源:互联网 发布:warframe无法连接网络 编辑:程序博客网 时间:2024/05/17 07:01

今天我们一起来学习一下String API 转换功能。(getBytes、toCharArray、valueOf、toLowerCase、toUpperCase、concat、+)

下面我们通过官方API+Coding的方式进行学习:

String s = "Hello World!";

通过getBytes将字符串->字节数组:

getBytes

public byte[] getBytes()
使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。

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

返回:
所得 byte 数组
从以下版本开始:
JDK1.1 
byte[] bytes = s.getBytes();for(byte b : bytes){System.out.print((char)b + " ");}

输出:

H e l l o   W o r l d ! 


通过toCharArray将字符串->字符数组:

toCharArray

public char[] toCharArray()
将此字符串转换为一个新的字符数组。

返回:
一个新分配的字符数组,它的长度是此字符串的长度,它的内容被初始化为包含此字符串表示的字符序列。
char[] chars = s.toCharArray();for(char c : chars){System.out.print(c + " ");}

输出:

H e l l o   W o r l d ! 


通过valueOf将xxx->字符串:

valueOf

public static String valueOf(char c)
返回 char 参数的字符串表示形式。

参数:
c - 一个 char
返回:
一个长度为 1 的字符串,它包含参数 c 的单个字符。
System.out.println("String.valueOf(chars):" + String.valueOf(chars));

输出:

String.valueOf(chars):Hello World!


通过toLowerCase进行小写转换:

toLowerCase

public String toLowerCase()
使用默认语言环境的规则将此 String 中的所有字符都转换为小写。这等效于调用 toLowerCase(Locale.getDefault())

注: 此方法与语言环境有关,如果用于应独立于语言环境解释的字符串,则可能生成不可预料的结果。示例有编程语言标识符、协议键、HTML 标记。例如,"TITLE".toLowerCase() 在 Turkish(土耳其语)语言环境中返回"t?tle",其中“?”是 LATIN SMALL LETTER DOTLESS I 字符。对于与语言环境有关的字符,要获得正确的结果,请使用toLowerCase(Locale.ENGLISH)

返回:
要转换为小写的 String
另请参见:
toLowerCase(Locale)
System.out.println("s.toLowerCase():" + s.toLowerCase());

输出:

s.toLowerCase():hello world!


通过toUpperCase进行大写转换:

toUpperCase

public String toUpperCase()
使用默认语言环境的规则将此 String 中的所有字符都转换为大写。此方法等效于 toUpperCase(Locale.getDefault())

注: 此方法与语言环境有关,如果用于应独立于语言环境解释的字符串,则可能生成不可预料的结果。示例有编程语言标识符、协议键、HTML 标记。例如,"title".toUpperCase() 在 Turkish(土耳其语)语言环境中返回"T?TLE",其中“?”是 LATIN CAPITAL LETTER I WITH DOT ABOVE 字符。对于与语言环境有关的字符,要获得正确的结果,请使用toUpperCase(Locale.ENGLISH)

返回:
要转换为大写的 String
另请参见:
System.out.println("s.toUpperCase():" + s.toUpperCase());

输出:

s.toUpperCase():HELLO WORLD!


需要注意的是,如果进行大小写转换并没有改变原字符串,而是生成新字符串。

此时输出原字符串,原字符串不变:

System.out.println(s);

输出:

Hello World!


通过concat进行字符串连接:

concat

public String concat(String str)
将指定字符串连接到此字符串的结尾。

如果参数字符串的长度为 0,则返回此 String 对象。否则,创建一个新的 String 对象,用来表示由此String 对象表示的字符序列和参数字符串表示的字符序列连接而成的字符序列。

示例:

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

参数:
str - 连接到此 String 结尾的 String
返回:
一个字符串,它表示在此对象字符后连接字符串参数字符而成的字符。
System.out.println("s.concat(s):" + s.concat(s));

输出:

s.concat(s):Hello World!Hello World!


需要说明的是用“+”有同样的效果:

System.out.println("s + s:" + s + s);

输出:

s + s:Hello World!Hello World!


0 0
原创粉丝点击