有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android在列表中的字符串与新字符串之间呈现行为不同

在我的Android程序中,我有许多数组和列表,每个数组和列表存储几百个字符串。我有时会从这些结构中获取一个字符串,并使用它以编程方式将文本绘制到屏幕上(下面的示例)

String displayText = titleList[i];
renderText(displayText);

在我当前的设备上,一切都按预期呈现。我想把它支持回jelly bean(api 16-18),但在我的jelly bean设备上,字符串有时不会呈现到屏幕上,或者只呈现前半部分,或者呈现一些字符串,但不呈现列表中的其他字符串。记录传递给渲染器的这些字符串的值会按预期打印。奇怪的是,如果我从引用的字符串(下面的例子)构建一个新字符串,它就可以工作了

String displayText = new String(titleList[i]);
renderText(displayText);

我可以这样做,但每次我引用一个已经存在的字符串时,构建新字符串似乎是浪费,可能会影响性能,尤其是因为它可以在较新的设备上工作。Android Studio告诉我我很愚蠢(“新字符串是多余的”)。我也很好奇这是怎么可能的,我想要一个更好的方法来解决它


共 (0) 个答案