如何在<;上使用Java/Android字符串格式;字符串数组>;
如何在上使用字符串格式如何在<;上使用Java/Android字符串格式;字符串数组>;,java,android,string-formatting,Java,Android,String Formatting,如何在上使用字符串格式 -Android中的资源 我应该像下面的例子那样做吗(如果是,我应该怎么做) %他给你发了个信息。 %他回答了你的故事 或者在这种情况下通常使用什么样的技术? 我只知道如何格式化字符串资源。(使用getString(R.id.mystring,replacevalue)) 谢谢你的帮助 编辑: 我尝试使用getStringArray(),但该方法不接受多个参数,而该参数只是一个数组资源 Android支持使用getString(String str,Object…
-Android中的资源
我应该像下面的例子那样做吗(如果是,我应该怎么做)
%他给你发了个信息。
%他回答了你的故事
或者在这种情况下通常使用什么样的技术?
我只知道如何格式化字符串资源。(使用getString(R.id.mystring,replacevalue)
)
谢谢你的帮助编辑:
- 我尝试使用getStringArray(),但该方法不接受多个参数,而该参数只是一个数组资源
getString(String str,Object…args)进行格式化
也可以使用方法包装格式。
public static String formatString(String pure,Object... args){
return String.format(pure,args);
}
//Or
public static String formatString(int id,Context context,Object... args){
String pure = context.getString(id);
return String.format(pure,args);
}
我个人更喜欢第二种方法,它在未来很容易改变。不幸的是,Android没有提供直接的方法来实现这一点。你能做的最好的事情是:
String.format(getResources().getStringArray(R.array.notification msgs)[0],“某人”)
据我所知,无法直接格式化字符串数组项?(谢谢你的回答,顺便说一句)我也知道如何在java和android中格式化单个字符串,但是我有描述的字符串数组资源的问题,在这里格式化字符串似乎是不可能的?!是的,这是不可能的,但您可以使用循环来格式化数组,就像在kotlin中使用format
方法作为扩展函数一样,例如:getResources().getStringArray(R.array.notification msgs)[0]。格式化(“某人”)
public static String formatString(String pure,Object... args){
return String.format(pure,args);
}
//Or
public static String formatString(int id,Context context,Object... args){
String pure = context.getString(id);
return String.format(pure,args);
}