我习惯于通过打印日志消息进行调试。我跟踪的变量由String和int组成。
例如,我以前打印以下内容:
Log.e(TAG, value1+":"+value2+":"+String3+":"+String4+":"+value5);
Log.e(TAG, String6+":"+value7);
其中
value1
等是int
,String3
等是String
变量。现在的问题是,我是否可以编写一个将变量(int,String或其他原始类型)的任意集合作为参数并输出Log的方法?
对于
String
,我可以使用method(String... arg)
,但是我不知道如何使用int
。我尝试了
(Object...)
并将.toString()
放在各处,但是int
的类型不是Object
....编辑:
我的最终目标:我想要一种仅将要调试的变量作为参数的方法。 (它们可以是任何类型,而不仅仅是String或int ...也可以是您可以转换为string的任何类型)。因此,该方法必须为我执行“原始”->“对象”的转换。
最佳答案
这不是问题,您可以将int
强制转换为Integer
这是一个对象
java默认是这样做的,您可以将int发送到接收Object
的方法
它叫做AutoBoxing
自动转换:
public static String toS(Object o1, Object o2){
return o1 + " " + o2;
}
现在您可以向其发送一个整数,它将自动将其转换为Integer:
int i = 8;
String combined = toS(i, "hello");
关于java - 在Java中混合String和int,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26019441/