使用java编译器时,是否可以指定用于字符串连接的类?

时间:2010-07-08 15:53:38

标签: java compiler-construction

我有一个java 1.5编译器,我不想也没有1.4编译器,但我需要使用它,因为除了字符串连接之外,使用1.5编译器构建的所有内容都在1.4环境中工作。唯一的区别是StringBuilderStringBuffer之间。有没有办法让1.5编译器使用1.4字符串连接类?

4 个答案:

答案 0 :(得分:3)

您可以使用常规字符串连接(如“A”+“B”),在编译源代码时,使用javac的“-target”选项指示需要生成.class文件的平台。

答案 1 :(得分:1)

看起来你要做的就是告诉1.5编译器为1.4编译。

javac -target 1.4

答案 2 :(得分:0)

你不能在你的代码中使用StringBuffer吗?这样,它应该在任何一个环境中运行..不需要特殊的魔法。 StringBuilder只是StringBuffer的一个不同步版本。 StringBuilder仅在Java 1.5中可用,因此只要您避免使用它并使用StringBuffer,它就应该在任一环境中运行。

答案 3 :(得分:0)

每当使用“+”处理String时,都使用字符串连接类,这可能效率低下。 StringBuilder更快,您可以在创建要使用的新StringBuilder对象后使用其.append(“text”)方法。它实际上是Java 1.5+中单线程使用的首选,因为StringBuffer执行同步,仅推荐用于多个线程。

您是否有特定原因无法使用StringBuilder?