连接两个字符串

adr*_*ian 19 string android

假设我有一个从游标获得的字符串,这样:

String name = cursor.getString(numcol);
Run Code Online (Sandbox Code Playgroud)

和另一个像这样的字符串:

String dest=cursor.getString(cursor.getColumnIndexOrThrow(db.KEY_DESTINATIE));
Run Code Online (Sandbox Code Playgroud)

如果最后我想要从他们两个获得一个字符串,例如:

name - dest
Run Code Online (Sandbox Code Playgroud)

如果name = Malmo和dest = Copenhagen,请说

我怎么能最终获得马尔默 - 哥本哈根?

因为android不会让我写:

name"-"dest
Run Code Online (Sandbox Code Playgroud)

Jon*_*eet 50

您需要使用字符串连接运算符 +

String both = name + "-" + dest;
Run Code Online (Sandbox Code Playgroud)

  • @Jasonw - 两次调用`concat`可能效率较低,因为与编译器转换Jon建议的内联表达式相比,它创建了一个额外的String对象.此外,Jon的解决方案更少打字.:) (6认同)

key*_*fer 16

我眼中最好的方法是使用类本身concat()提供的方法String.

在您的情况下,用法将如下所示:

String myConcatedString = cursor.getString(numcol).concat('-').
       concat(cursor.getString(cursor.getColumnIndexOrThrow(db.KEY_DESTINATIE)));
Run Code Online (Sandbox Code Playgroud)