我可以指定在使用java编译器时用于字符串连接的类吗?

我可以指定在使用java编译器时用于字符串连接的类吗?,java,compiler-construction,Java,Compiler Construction,我有一个java 1.5编译器,我不希望也有一个1.4编译器,但我需要使用它,因为除了字符串连接之外,使用1.5编译器构建的所有东西都可以在1.4环境中工作。唯一的区别是StringBuilder和StringBuffer之间的区别。有没有办法让1.5编译器使用1.4字符串连接类?难道不能在代码中使用StringBuffer吗?这样,它应该在任何一种环境中运行。。不需要特殊的魔法。StringBuilder只是StringBuffer的一个非同步版本。StringBuilder仅在Java 1.

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

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

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

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

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

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

您不能使用StringBuilder有什么具体原因吗?

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


您不能使用StringBuilder有什么特别的原因吗?

看起来您只需要告诉1.5编译器编译1.4版本


javac-target1.4看起来您只需要告诉1.5编译器编译1.4


javac-target1.4

这一版本需要更多信息!你知道Java 1.5现在已经被弃用了,是吗?难道你不能告诉Java 1.5在1.4版本中编译,还是我感到困惑?Java 1.5可能被Sun弃用了,但在BlackBerry上没有,而且在许多大型公司中肯定没有弃用。这需要更多的信息!你知道Java 1.5现在已经被弃用了,是吗?难道你不能告诉Java 1.5在1.4版本中编译吗?还是我感到困惑?Java 1.5可能被Sun弃用了,但在BlackBerry上却没有,而且它肯定在很多时候都没有被弃用corporations@Ed好的,我理解你的要求。@Ed Marty好的,我理解你的要求。
-source
也可以,否则它不允许你
-target
。您还应该使用
-bootclasspath
来使用旧的
rt.jar
——这不仅仅是因为您可能意外地使用了“新”API,而且同一个源代码可以使用旧Java库中不存在的重载。
-source
也可以使用,或者它不允许您使用
-target
。您还应该使用
-bootclasspath
来使用旧的
rt.jar
——这不仅仅是因为您可能会意外地使用“新”API,而且同一源代码可以使用旧Java库中不存在的重载。