跳至主要內容
Java自带的4种字符串组织和格式化方法

在Java中,组织字符串是平时最常见的操作,这里总结一下Java自带的四种处理方式。

1. 使用+拼接

案例:

String name = "DD";
String host = "blog.didispace.com";
String result = "hello " + name + ", your blog is " + host; 

程序猿DD原创大约 2 分钟JavaJava
2022 Java生态系统报告:Java 11超Java 8、Oracle在缩水、Amazon在崛起!

2022 Java生态系统报告

近日,New Relic发布了最新的2022 Java生态系统报告,这份报告可以帮助我们深入的了解Java体系的最新使用情况,下面就一起来看看2022年,Java发展的怎么样了,还是Java 8 YYDS吗?

Java 11成为新的标准

在2020年的时候,Java 11已经推出了1年多,但当时Java 8的占有率高达84.48%。2年过去了,Java 11上生产的比例第一次超过Java 8,占有率已经达到了48.44%。曾今的霸主Java 8几乎跌掉了一半,以46.45%占据第二。


程序猿DD原创大约 5 分钟JavaJava
Log4j2发布2.16.0,删除Message Lookups,加固漏洞防御

昨天,Apache Log4j 团队再次发布了新版本:2.16.0!

2.16.0 更新内容

  • 默认禁用JNDI的访问,用户需要通过配置log4j2.enableJndi参数开启
  • 默认允许协议限制为:java、ldap、ldaps,并将ldap协议限制为仅可访问Java原始对象
  • Message Lookups被完全移除,加固漏洞的防御

更多细节,可以通过官网查看:https://logging.apache.org/log4j/2.x/


程序猿DD原创小于 1 分钟JavaJavaLog4j2前沿资讯
Java 13、14都有哪些新特性?

Java 13在2019年9月发布,这个版本引入的正式可用特性几乎没有,是我认为最无聊的版本之一。所以我们跳过Java 13直接来看Java 14吧。

Switch表达式

我觉得switch表达式在日常中开发被使用的太少了,不是因为这个关键字和if比起来太“难”,而是因为它很冗长,而且这种视觉上的噪声容易掩盖那些难以调试的错误,特别是那些break语句,就像下面这样:

switch (day) {
    case MONDAY:
    case FRIDAY:
    case SUNDAY:
        System.out.println(6);
        break;
    case TUESDAY:
        System.out.println(7);
        break;
    case THURSDAY:
    case SATURDAY:
        System.out.println(8);
        break;
    case WEDNESDAY:
        System.out.println(9);
        break;
    default:
        System.out.println(11);    
}

码农小胖哥大约 3 分钟JavaJavaJava 13Java 14
Java 12都有哪些新特性?

上一篇说完了Java11的新特性,本篇接着说一下Java12.Java 12 对开发者有用的特性并不是特别多,不过实用性还是有的。

字符串增强

Java 12 进一步对字符串操作进行增强,增加了两个方法。

字符串缩进

String indent(int n) 会根据参数n对字符串进行缩进。具体的规则是

  • n>0时,会在字符串的每一行开头插入n个空格,字符串整体右移。
  • n<0时,会在字符串的每一行开头删除n个空格,如果实际的空格数小于n,删除该行所有空格,但是并不会换行。

码农小胖哥大约 3 分钟JavaJavaJava 12
云原生时代,Java的危与机

10月的TIOBE编程语言排行榜发布了最新一期榜单,雄踞榜首多年的Java终于让出了榜首位置,Python成功登顶。一时间,关于Python的吹捧与对Java的看衰持续引发热议。“世界上只有两种编程语言,一种广为诟病,另一种没人用”。C++之父的这句名言用来形容Java同样合适,作为企业级的编程语言,Java不仅在中国互联网大厂中有着广泛的应用,在世界范围内更是有着庞大的生态和就业机会。

编程语言之争是技术圈经久不衰的话题,国内开发者培训业务多了起来以后,关于编程语言的话题炒作更是此起彼伏。但雄踞榜首多年,Java的下滑也并非空穴来风,而是有其深刻的历史背景所在。这个背景,或许就是云原生时代的来临。


掘金大约 5 分钟Java云原生前沿资讯
Java 11都有哪些新特性?

Java 11是自Java 8以来的又一个LTS版本,是目前全球使用最多的LTS版本之一。今天我们接着在Java 9 到 Java 17系列文章中来认识针对普通开发者的Java 11。

字符串API增强

在Java 11中,针对String的操作进一步得到加强。避免我们在很常见的场景中引入额外的、复杂的API。

isBlank()

用来判断字符串是不是空字符""或者trim()之后(" ")为空字符:

String blankStr = "    ";
// true
boolean trueVal = blankStr.isBlank();

码农小胖哥大约 5 分钟JavaJavaJava 11
Java 10都有哪些新特性?

在上一篇我们对Java 9的新特性进行了一些回顾,今天接着来看看Java 10带来了什么特性。之所以需要把Java 8 到Java 17的特性归纳一遍,因为Java社区对Java 17的重视程度前所未有。话不多说,让我们走进Java 10。

Java 10

从Java 10 开始,Java的迭代周期缩短为半年,半年发布一个版本。

局部变量类型推断

在Java 6时初始化一个Map需要我们这样来声明:


码农小胖哥大约 4 分钟JavaJavaJava 10
2
3
4
5