在黑莓应用程序中连接有什么问题?

时间:2010-01-15 20:59:10

标签: blackberry blackberry-simulator

对于我的生活,我无法理解为什么在MainScreen中添加连接字符串会导致BB模拟器抛出异常。如果我使用以下控件运行一个非常简单的hello程序,一切都很好:

RichTextField rtfHello = new RichTextField("Hello There !!!");        
add(rtfItemDescription);

但是如果我添加一个连接字符串,整个应用程序就会中断:

String MyName = "John Doe";
RichTextField rtfHello = new RichTextField("Hello There !!!" + MyName);        
add(rtfItemDescription);

那么我做错了什么?为什么模拟器会为第二个例子抛出异常?

5 个答案:

答案 0 :(得分:2)

对于Blackberry中的字符串连接,尝试使用StringBuffer类。 StringBuffer比String更快,因为它是可变的。

答案 1 :(得分:1)

看起来当我在我的blackberry项目中使用eclipse执行任何字符串连接时(使用eclipse),打包过程无法找到StringBuilder类的定义。该项目默认为jdk 1.4。 StringBuilder直到版本1.5才引入,因此尝试运行代码将产生“找不到类定义”错误消息。所以这是我猜测为什么我看到我的错误。 - sexitrainer 1月20日15:30

这是因为StringBuilder不是J2ME的一部分。在为移动设备编程时,您将无法使用它。

答案 2 :(得分:1)

试试这个

String MyName = "John Doe";
    RichTextField rtfHello = new RichTextField("Hello There !!!" + MyName);        
    add(rtfHello);

答案 3 :(得分:0)

不确定为什么会爆炸(但我不是黑莓/ java开发人员)。你有没试过:

String MyName = "John Doe"; 
String HelloString = "Hello There !!!";
RichTextField rtfHello = new RichTextField(HelloString.concat(MyName));         
add(rtfItemDescription); 

或者简单地说,

String MyName = "John Doe"; 
RichTextField rtfHello = new RichTextField("Hello There!!!".concat(MyName));         
add(rtfItemDescription); 

答案 4 :(得分:0)

我认为问题不在于字符串连接。 可以提供更多信息,例如您获得的例外情况。