Java 14 或 15 中的字符串插值

2022-09-02 00:41:59

由于我使用的是Java 14和15预览功能。尝试在 java 中查找字符串插值。

我发现的最接近的答案是

String.format("u1=%s;u2=%s;u3=%s;u4=%s;", u1, u2, u3, u4)

由于我从许多参考资料中得到的答案是4,5年前问的旧答案。java 11,12,13,14,15中的字符串插值是否有任何更新,相当于C#

string name = "Horace";
int age = 34;
Console.WriteLine($"Your name is {name} and your age {age}");

答案 1

有些东西稍微接近一;的实例版本,称为:String::formatformatted

String message = "Hi, %s".formatted(name);

它类似于 ,但在链式表达式中使用更友好。String::format


答案 2

据我所知,标准java库中没有关于这种字符串格式的更新。

换句话说:你仍然“卡”在使用和基于索引的替换机制上,或者你必须选择一些第三方库/框架,如Velocity,FreeMarker,...有关初步概述,请参阅此处String.format()