首页 > 编程语言 >告别StringUtil:使用Java 11的全新String API优化你的代码

告别StringUtil:使用Java 11的全新String API优化你的代码

时间:2023-04-17 23:01:48浏览次数:40  
标签:11 Java String System println 字符串 public out

前言

  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 编码,然后将结果输出到控制台上。由于这两种编码格式的字符集不同,因此转换后的字符串的结果可能与原始字符串不同。

结尾

  如果觉得对你有帮助,可以多多评论,多多点赞哦,也可以到我的主页看看,说不定有你喜欢的文章,也可以随手点个关注哦,谢谢。

  我是不一样的科技宅,每天进步一点点,体验不一样的生活。我们下期见!

标签:11,Java,String,System,println,字符串,public,out
From: https://blog.51cto.com/u_11446735/6196404

相关文章

  • 将map对象参数转换成String=String&方式
    *将map对象参数转换成String=String&方式*@paramparams*@paramcharset*@return*@throwsUnsupportedEncodingException*/publicstaticStringgenerateParams(Map<String,String>params,Stringcharset)throwsUnsupportedEn......
  • JavaScript 利用 async await 实现 sleep 效果
    constsleep=(timeountMS)=>newPromise((resolve)=>{setTimeout(resolve,timeountMS);});(async()=>{console.log('11111111,'+newDate());awaitsleep(2000);console.log('22222222,'+newDate());await......
  • java接口
    java接口接口是Java中实现多重继承的一种机制。当类继承一个接口时,一般称为实现了这个接口。语法[public]?interface接口名[extends接口名1[,接口名2]*]? {    [public]?[static]?[final]?类型名变量名[=表达式1[,变量名[=表达式2...]?]?]?;  ......
  • Java7
    1.编写一个简单程序,要求数组长度为5,静态赋值10,20,30,40,50,在控制台输出该数组的值packagea;publicclassaaa{publicstaticvoidmain(String[]args){inta[]={10,20,30,40,50};for(inti:a){System.out.println(i);}}}......
  • java最终类和最终方法
    最终类最终类不允许被继承,也就是说不允许成为父类,或者说不允许拥有子类。由于最终类不可能有子类,所以最终类中的所有方法都是最终方法。由于最终类不可能有子类,所以也就不可能存在运行时多态现象(但存在编译时多态,如重载),这样就可以在编译时优化,加快执行速度。  最终方法如......
  • 有关数独问题的解决方法- Java实现
    直接法和位运算发1publicbooleanisValidSudoku(char[][]board){2int[][]line=newint[board.length][board.length];3int[][]colum=newint[board.length][board.length];4int[][]cell=newint[board.length][board.length];5for(inti=......
  • java抽象类和抽象方法
    抽象类语法:   [public]?abstractclass类名[extends父类名]?[implements接口名1,接口名2,...]?  {     [private | protected | public]? [static]?[final]?类型名变量名[ =表达式1 [,变量名[ =表达式2... ]?]?]? ;   [private |......
  • Robotruck UVA - 1169
    有n个垃圾,第i个垃圾的坐标为(xi,yi),重量为wi。有一个机器人,要按照编号从小到大的顺序捡起所有垃圾并扔进垃圾桶(垃圾桶在原点(0,0))。机器人可以捡起几个垃圾以后一起扔掉,但任何时候其手中的垃圾总重量不能超过最大载重C。两点间的行走距离为曼哈顿距离(即横坐标之差的绝对值加上纵......
  • PAT Basic 1107. 老鼠爱大米
    PATBasic1107.老鼠爱大米1.题目描述:翁恺老师曾经设计过一款Java挑战游戏,叫“老鼠爱大米”(或许因为他的外号叫“胖胖鼠”)。每个玩家用Java代码控制一只鼠,目标是抢吃尽可能多的大米让自己变成胖胖鼠,最胖的那只就是冠军。因为游戏时间不能太长,我们把玩家分成\(N\)组,每组......
  • Add Again UVA - 11076
     defineS,itissumofallpossiblepermutationsofagivensetofdigits.Forexample,ifthedigitsare<123>,thensixpossiblepermutationsare<123>,<132>,<213>,<231>,<312>,<321>andthesumofthemis......