我能得到... args变量吗?我想制作MyLog(String格式,Object ... args)

时间:2012-11-16 01:16:33

标签: java logging arguments

如果我打电话

String name = "Chang";
int id = 1;
boolean isChecked = false;

MyLog.d(__FORMAT__, name, id, isChecked);  
  

MyLog.java

public static d(String foramt, Object... args) {
    Log.d(___TAG___, String.format(format, args));
}

我可以获得arg值。 “张”,1,假。

但我不知道arg变量(?),“name”,“id”,“isChecked”。

我想记录

name: Chang 
id: 1
isChecked:false

我可以获得“name”,“id”,“isChecked”吗?

抱歉可怜的Enlgish ......

1 个答案:

答案 0 :(得分:1)

在java中,varargs参数可以像数组一样引用。例如,您可以写:

System.out.println(args[0]);

如果你问如何获取传入的变量的名称,那是不可能的。最好让类调用Person,然后重新声明这样的方法:

public static d(String foramt, Person... args) {
     for(Person p:args){
         //get the values of each object here and log them
     }
}