关于后端:告别StringUtil使用Java-11的全新String-API优化你的代码

37次阅读

共计 2680 个字符,预计需要花费 7 分钟才能阅读完成。

前言

  Java 11 是 Java 编程语言的一次次要更新,引入了许多新性能和改良。并且在 String 类中引入了一些新的办法,可能更好地满足开发的需要,进步编程效率。

  1. repeat(int count):返回一个新的字符串,该字符串是由原字符串反复指定次数造成的。
  2. isBlank():查看字符串是否为空白字符序列,即长度为 0 或仅蕴含空格字符的字符串。
  3. lines():返回一个流,该流由字符串按行分隔而成。
  4. strip():返回一个新的字符串,该字符串是原字符串去除前导空格和尾随空格后造成的。
  5. stripLeading():返回一个新的字符串,该字符串是原字符串去除前导空格后造成的。
  6. stripTrailing():返回一个新的字符串,该字符串是原字符串去除尾随空格后造成的。
  7. formatted(Object… args):应用指定的参数格式化字符串,并返回格式化后的字符串。
  8. translateEscapes():将 Java 转义序列转换为相应的字符,并返回转换后的字符串。
  9. transform() 办法:该办法用于将字符串转换为另一种编码格局。

示例

1. repeat(int count)

public class StringRepeatExample {public static void main(String[] args) {
        String str = "abc";
        String repeatedStr = str.repeat(3);
        System.out.println(repeatedStr);
    }
}

输入后果:

abcabcabc

2. isBlank()

public class StringIsBlankExample {public static void main(String[] args) {
        String str1 = "";
        String str2 = " ";
        String str3 = "\t";

        System.out.println(str1.isBlank());
        System.out.println(str2.isBlank());
        System.out.println(str3.isBlank());
    }
}

输入后果:

true
true
true

3. lines()

import java.util.stream.Stream;

public class StringLinesExample {public static void main(String[] args) {
        String str = "Hello\nWorld\nJava";
        Stream<String> lines = str.lines();
        lines.forEach(System.out::println);
    }
}

输入后果:

Hello
World
Java

4. strip()

public class StringStripExample {public static void main(String[] args) {
        String str1 = "abc";
        String str2 = "\t def \n";
        System.out.println(str1.strip());
        System.out.println(str2.strip());
    }
}

输入后果:

abc
def

5. stripLeading()

public class StringStripLeadingExample {public static void main(String[] args) {
        String str1 = "abc";
        String str2 = "\t def \n";
        System.out.println(str1.stripLeading());
        System.out.println(str2.stripLeading());
    }
}

输入后果:

abc
def

6. stripTrailing()

public class StringStripTrailingExample {public static void main(String[] args) {
        String str1 = "abc";
        String str2 = "\t def \n";
        System.out.println(str1.stripTrailing());
        System.out.println(str2.stripTrailing());
    }
}

输入后果:

abc
def

7. formatted(Object… args)

public class StringFormattedExample {public static void main(String[] args) {
        String str = "My name is %s, I'm %d years old.";
        String formattedStr = String.format(str, "John", 25);
        System.out.println(formattedStr);
    }
}

输入后果:

My name is John, I'm 25 years old.

8. translateEscapes()

public class StringTranslateEscapesExample {public static void main(String[] args) {
        String str = "Hello\\nWorld\\tJava";
        String translatedStr = str.translateEscapes();
        System.out.println(translatedStr);
    }
}

输入后果:

Hello
World   Java

9. transform()

public class StringTransformExample {public static void main(String[] args) {
        String str = "hello world";
        byte[] bytes = str.getBytes(StandardCharsets.UTF_8);
        String newStr = new String(bytes, StandardCharsets.ISO_8859_1);
        System.out.println(newStr);
    }
}

输入后果:

hello world

  在这个示例中,咱们将字符串 "hello world" 从 UTF-8 编码转换为 ISO-8859-1 编码,而后将后果输入到管制台上。因为这两种编码格局的字符集不同,因而转换后的字符串的后果可能与原始字符串不同。

结尾

  如果感觉对你有帮忙,能够多多评论,多多点赞哦,也能够到我的主页看看,说不定有你喜爱的文章,也能够顺手点个关注哦,谢谢。

  我是不一样的科技宅,每天提高一点点,体验不一样的生存。咱们下期见!

正文完
 0