我需要使用Java中包含换行符的长字符串。这些是用于HTML生成的,但这并不是最重要的。
我知道Java在某种程度上没有它的 文档是残酷的 。但是我可以使用其他机制:
1)字符串 连接 (或StringBuilders),不是很易读和可复制粘贴的。
2)将字符串存储在 .properties 文件中,这些字符串不是很可读,但是具有更高的可粘贴性。
3)将每个“ heredoc”存储在单独的 .txt 文件中,该文件可读性好且可复制粘贴,但导致成群的txt文件。
4)模板引擎,例如 Velocity 或 Freemarker
,将设计移出Java,需要大量的映射操作,这是相当不错的,但是Velocity语法和循环/如果功能不如Smarty可读性好
每个都有优缺点,我想选择3个,但由于纯粹的意识形态原因,管理层更喜欢1个。我想为使用Java中的heredocs提供一些标准,可能是使事情变得更容易的库。我将不胜感激关于如何使用heredocs的任何建议(有很好的论据)。
谢谢
尝试使用Rythm模板引擎,该引擎是使用Razor像干净语法那样的高性能Java模板引擎构建的。
链接:
更新
问题内容: 不使用String类的方法如何查找字符串的长度? 问题答案: 应该管用。 或如何: 甚至可能会在恒定时间内运行:) 另一个 最愚蠢的解决方案之一: 这是作弊吗?:-)
问题内容: 在Java中,参考方法调用,对象可能具有的最大大小是多少? 我知道返回a的大小为; 问题答案: 考虑到该类的方法返回,则该方法将返回的最大长度为,即(或大约20亿)。 在数组的长度和索引方面(例如,这可能是内部数据表示的实现方式String),Java SE 7版的《 Java语言规范》的第10章:数组表示以下内容: 数组中包含的变量没有名称。而是由使用非负整数索引值的数组访问表达式引
问题内容: 在这里,我们将字符串h引用为字符串文字hi。JVM有一个字符串文字池来存储字符串文字,因此我们可以在字符串不可更改的情况下重用它们。 当我们说这的确切含义是什么?我们在谈论什么吗?是否从相同的地址传送时间中选取? 问题答案: 是的,为了简化起见,您可以将其视为从同一地址选择,但更精确的是变量拥有相同的 引用 ,即JVM 在映射到对象的正确内存地址时 使用的 数字/对象ID (对象可以在
问题内容: 上面的代码片段中的代码产生以下输出。 a =’Hello’和b =’Hello’的长度分别为6和6,equals()为false 虽然两者的价值,并在控制台上显示的是,回报。怎么样? 问题答案: 和是 不是 可打印字符。它们都是控制字符,它们决定了文本应如何呈现-从左到右或从右到左。 您不会在终端中看到它们,并且它们不应该是等效的字符串。
我有以下2种方法: 两种方法的内容相等,我尝试使用以下方法: 但当我尝试将其与字符串或Long iterable一起使用时,它会引发编译错误。有什么解决方案吗?
我刚来Java,如果这是个明显的问题,我很抱歉。 我正在尝试逐个字符读取字符串以创建树节点。例如,输入,节点为 我注意到了 我可以用一个循环来获得所有的角色吗?就像 我试过了,但不管用。 我该怎么做? 非常感谢你的帮助。 扫描器读取器=新扫描器(System.in);System.out.println(“将节点输入为大写字母,不带空格,结尾为'/'”);int i=0;char node=rea