0

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

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

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

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

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

4

5 回答 5

2

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

于 2010-02-15T23:53:11.457 回答
1

尝试这个

String MyName = "John Doe";
    RichTextField rtfHello = new RichTextField("Hello There !!!" + MyName);        
    add(rtfHello);
于 2010-02-18T14:10:39.563 回答
1

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

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

于 2010-02-15T22:42:38.687 回答
0

我不认为字符串连接有问题。可以提供更多信息,例如您遇到的异常。

于 2010-01-16T11:04:10.953 回答
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); 
于 2010-01-15T21:15:07.093 回答