我正在try 使用字符串的.format方法.但如果我把%1、%2等放在字符串java中.util.UnknownFormatConversionException指向一个令人困惑的Java源代码片段:

private void checkText(String s) {

    int idx;

    // If there are any '%' in the given string, we got a bad format
    // specifier.
    if ((idx = s.indexOf('%')) != -1) {
        char c = (idx > s.length() - 2 ? '%' : s.charAt(idx + 1));
        throw new UnknownFormatConversionException(String.valueOf(c));
    }
}

由此我了解到%字符是被禁止的.如果是这样,那么我应该使用什么作为参数占位符?

我用的是Scala 2.8.

推荐答案

虽然前面的回答都是正确的,但它们都是用Java编写的.下面是一个Scala示例:

val placeholder = "Hello %s, isn't %s cool?"
val formatted = placeholder.format("Ivan", "Scala")

我还有一篇大约making format like Python's % operator篇可能有用的博客文章.

Java相关问答推荐

在URL类图中表示Java swing类

我应该避免在Android中创建类并在运行时编译它们吗?

Android -如何修复Java.time.zone. ZoneRulesExcept:未知时区ID:Europe/Kyiv

H2弹簧靴试验跌落台

如何在访问完所有文件后加入所有线程?

无法在org. openjfx:javafx—fxml:21的下列变体之间进行 Select

如何配置ActiveMQ Artemis以使用AMQP 1.0和其他协议与Java

我找不到&Quot;配置&的位置

我如何解释这个错误?必需类型:供应商R,提供:收集器对象,捕获?,java.util.List java.lang.Object>>

如何仅使用键/ID的一部分(组合)高效地返回映射值?

为什么同步数据块无效?

Java17支持哪个MapR版本?

FETCH类型设置为LAZY,但它仍会发送第二个请求

使用SWIG将C++自定义单元类型转换为基本Java类型

JOLT根据值删除并保留其余的json键

如何制作回文程序?

在输入端没有可行的替代方案'; Select *';

双对象供应商

使用DynamoDB增强客户端时未更新属性

从 Java 17 切换回 Java 8 后出现的问题