day08-常用类_String的构造方法
This commit is contained in:
44
day08/src/com/inmind/string01/StringDemo02.java
Normal file
44
day08/src/com/inmind/string01/StringDemo02.java
Normal file
@@ -0,0 +1,44 @@
|
||||
package com.inmind.string01;
|
||||
/*
|
||||
String类的构造方法:创建String类的对象
|
||||
|
||||
String(String original) 初始化新创建的String对象,使其表示与参数相同的字符序列; 换句话说,新创建的字符串是参数字符串的副本
|
||||
public String(char[] value) :通过当前参数中的字符数组来构造新的String。
|
||||
public String(byte[] bytes) :通过使用平台的默认字符集解码当前参数中的字节数组来构造新的String。
|
||||
*/
|
||||
public class StringDemo02 {
|
||||
public static void main(String[] args) {
|
||||
//public String(byte[] bytes) :通过使用平台的默认字符集解码当前参数中的字节数组来构造新的String。
|
||||
//定义一个字节数组
|
||||
byte[] bytes = {97, 98, 99};// 97 -- 'a'
|
||||
//创建String对象
|
||||
//将字节数组的内容拼接成新的字符串(根据编码方式,将对应的十进制的值编码成字符串内容)
|
||||
//使用场景:javase,io流知识点中的字节流中来使用
|
||||
String s = new String(bytes);
|
||||
System.out.println(s);//abc
|
||||
}
|
||||
|
||||
public static void method2() {
|
||||
//public String(char[] value) :通过当前参数中的字符数组来构造新的String。
|
||||
//定义一个字符数组
|
||||
char[] chars = {'a', 'b', 'c'};//静态初始化简写形式
|
||||
//创建String对象
|
||||
// String s = new String(chars);
|
||||
String s = new String(chars,1,2);
|
||||
System.out.println(s);//abc
|
||||
|
||||
}
|
||||
public static void metdhod1() {
|
||||
/*
|
||||
String(String original) 初始化新创建的String对象,使其表示与参数相同的字符序列;
|
||||
换句话说,新创建的字符串是参数字符串的副本
|
||||
*/
|
||||
String s1 = "abc";
|
||||
//通过构造方法创建对象
|
||||
String s2 = new String(s1);
|
||||
System.out.println(s1);
|
||||
System.out.println(s2);
|
||||
System.out.println(s1 == s2);//false,因为s2使用了new在堆中开辟了新空间,虽然指向同一个内容,但是s1和s2的引用地址不同
|
||||
//总结:字符串String 如果要比较内容的话,一定不能使用 == 号,因为它比较的是地址
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user