Nit*_*hin 12 java string formatting
考虑一个字符串.
String Str = "Entered number = %d and string = %s"
Run Code Online (Sandbox Code Playgroud)
让我们说我有一个对象列表
List<Objects> args = new ArrayList<Objects>();
args.add(1);
args.add("abcd");
Run Code Online (Sandbox Code Playgroud)
有什么方法可以将这些args替换成Str,这样我就能获得一个像"Entered number = 1 and string = abcd "?
通过概括,我计划将所有问题和参数转储到文件(如json)中,并在运行时执行它们.如果有更好的方法,请告诉我.
dog*_*ane 26
尝试:
String formatted = String.format(str, args.toArray());
Run Code Online (Sandbox Code Playgroud)
这给出了:
Entered number = 1 and string = abcd
Run Code Online (Sandbox Code Playgroud)
您可以使用以下内容:
String str = "Entered number = %d and string = %s";
List<Object> args = new ArrayList<Object>();
args.add(1);
args.add("abcd");
System.out.println(String.format(str, args.toArray()));
Run Code Online (Sandbox Code Playgroud)
会给出输出:
Entered number = 1 and string = abcd
Run Code Online (Sandbox Code Playgroud)
The last formal parameter in a list is special;
it may be a variable arity parameter, indicated by an
elipsis following the type.
If the last formal parameter is a variable arity parameter of type T,
it is considered to define a formal parameter of type T[].
The method is then a variable arity method. Otherwise, it is a fixed arity
method. Invocations of a variable arity method may contain more actual
argument expressions than formal parameters. All the actual argument
expressions that do not correspond to the formal parameters preceding
the variable arity parameter will be evaluated and the results stored
into an array that will be passed to the method invocation.
Run Code Online (Sandbox Code Playgroud)
在StackOverflow上看到这个问题!
| 归档时间: |
|
| 查看次数: |
26473 次 |
| 最近记录: |