20201223-禹娜

总结:

1.String s="hello" 和 String t=new String("hello")在比较时。他们所对应的哈希码不同,s 是一个String的实例。t是new了一个新的实例,所以他们不同。用equals比较时,是用来比较 String实例 中的字符序列是否相等。堆中的对象内容相等。

2.String t = "helloworld" ; 和 String r = "hello" + "world" 在比较时。他们所对应的哈希吗相等,在r编译时,就已经是一个helloworld字符串了。所以相等。

3.String s = "hello" ; String x = "world" ;String t = "helloworld" ;

String m = s + x ; System.out.println( t == m );在比较时,s+x相加后又产生了一个新的字符序列,所以为false。如果String之前有final,就为true。用equals比较时为true。

==:比较的是两个字符串内存地址(堆内存)的数值是否相等,属于数值比较。

equals():比较的是两个字符串的内容,属于内容比较。

4.用StringJoiner来连接字符串。StringJoiner是Java8新出的一个类,用于构造由分隔符分隔的字符序列,并可选择性地从提供的前缀开始和以提供的后缀结尾。

StringJoiner stringJoiner = new StringJoiner(",");
 stringJoiner.add("hello");
 stringJoiner.add("guys");
 stringJoiner.add("大家好");
 System.out.println(stringJoiner.toString());

  1. Java getChars() 方法

    getChars() 方法将字符从字符串复制到目标字符数组。

    语法:

    public void getChars(int srcBegin, int srcEnd, char[] dst,  int dstBegin)
    
    • rcBegin -- 字符串中要复制的第一个字符的索引。
    • srcEnd -- 字符串中要复制的最后一个字符之后的索引。
    • dst -- 目标数组。[ )
    • dstBegin -- 表示目标数组的哪个位置开始从存放字符。

作业:https://gitee.com/ke-nina/exercise

标签

评论

© 2021 成都云创动力科技有限公司 蜀ICP备20006351号-1