字符串String的定义与使用、字符串String与基本数据类型的相互转换

Carmen ·
更新时间:2024-09-20
· 539 次阅读

字符串String的定义:

1、字符串String类存放与 java.lang 包中,因为java.lang包是系统默认引入的,所以使用该包时,不用再通过 import 关键字进行引入了

2、String 类是 final 类型的类,所以 String 类不能被其他类继承,即没有子类;

字符串String的使用:

String 常量 :和别的数据类型不一样,String类型的常量 和 对象一样,也拥有自己的 引用和实体,这些引用和实体都存放在常量池中;

例如: "你好"、"itm"、"my" ,这三个都是String 常量,它们分别拥有自己的 引用和实体 ;

String 对象:通过 String类 声明对象并创建对象;

声明空对象 ;

String str ;

创建对象 ;

String str = new String("my one String");

****因为 String常量 拥有自己的 引用和实体,所以可以通过 String 常量 直接赋值给 String 对象 ,这样对象就拥有了和常量一样的引用和实体了;

例如:

        String ac;
        ac = "你好";
        System.out.println("ac:"+ac);

****需要注意的是,用户不能输出String对象的引用,上面代码 ac 输出的不是引用值,而是: 你好 ;

String类比较常用构造方法:

1、String str = new String();         //此时对象 str 实体为 空 ;

2、String str = new String("你好");     //此时对象 str 实体为 你好 ;

3、String s = new String(str);       //此时对象 s 的引用和实体 与 对象str一样 ;

4、String(char [] a) 用一个字符数组创建一个String对象;

例如:

char[] ch = {'你','好','世','界'};

String str = new String(ch);

str的实体为:你好世界 ;

5、String(char [] a , int start , int count) 用一个字符数组指定 位置、数量 创建一个String对象;

start表示: 起点,从0开始算起;

count表示: 个数,不是位置,从1开始算起;

例如:

        char[] ch = {'你','好','世','界','n','m'};
        String str = new String(ch,2,3);
        System.out.println(str);

str的实体为:世界n ;

字符串String的并置:

String 对象可以通过 “ + ” ,进行并置,得到一个新的 String对象;

第一种情况:

String h = "ITM", j = "ITM" ;

String hj = h + j ;

第二种情况:

String hj = "ITM" + "ITM" ;

需要注意的是:

对于第一种情况,对象 hj 会得到新的 引用;

如下代码↗:

String h = "d",j = "s" ; String hj,jh; hj = h + j ; jh = h + "s" ; if(hj == jh){ System.out.println("hj == jh"); }else{ System.out.println("hj != jh"); } if(hj.equals(jh)){ System.out.println("hj == jh"); }else{ System.out.println("hj != jh"); }

代码中,对于 对象 hj 和 jh ,都存在一个 String对象的赋值 ,所以对象 hj 和 jh 会得到新的 引用 ;

相当于: hj = new String("ds") ;  jh = new String("ds") ;

代码输出结果:

hj != jh
hj == jh

对于第二种情况得到的是常量池中已有的引用;

如下代码↗:

String hj,jh; hj = "d" + "s" ; jh = "d" + "s" ; if(hj == jh){ System.out.println("hj == jh"); }else{ System.out.println("hj != jh"); } if(hj.equals(jh)){ System.out.println("hj == jh"); }else{ System.out.println("hj != jh"); }

代码中,对于 对象 hj 和 jh ,都是 String 常量 + String 常量 进行运算的,所以结果也是一个 String 常量,则它们的引用都是一样的;

代码输出结果:

hj == jh
hj == jh

字符串String与基本数据类型的相互转换:

一、字符串String 转换成 基本数据类型 ;

调用 java.lang 包的 Byte、Short、Integer、Long、Double 类中相应方法,可以实现字符串类型转换成基本数据类型;

如下代码↗:

String number = "111" ; int in = Integer.parseInt(number); in += 11 ; System.out.println("in:"+in);

代码输出结果:

in:122

对于其他数据类型,使用时也是一样的:

byte by = Byte.parseByte(number);

short sho = Short.parseShort(number);

long lon = Long.parseLong(number);

float flo = Float.parseFloat(number);

double dou = Double.parseDouble(number);

需要注意的是:

1、转换时,String对象的值是不能有字母的;
 

二、基本数据类型 转换成 字符串String;

通过 String 类的 public static String valueOf() ; 方法,可以实现基本数据类型 转换成 字符串String类型;

如下代码↗:

double casea = 122.111; String strings = String.valueOf(casea); String str = "密码:"; System.out.println(str+strings);

代码输出结果:

密码:122.111


作者:LagerSwan、



基本数据类型 数据类型 数据 字符 string

需要 登录 后方可回复, 如果你还没有账号请 注册新账号