我想在不使用分号的情况下调用函数,这可能吗?
例如:
void myFunction(){
}
我想在不使用分号的情况下调用它。
如果函数不是void,我可以编写
if(myfunction() != null)
{
}
如何使用void函数执行类似操作?
答案 0 :(得分:4)
我想在不使用分号的情况下调用函数,这可能吗?
如果我理解你的问题,是的,你可以使用unicode分号而不是ASCII分号。像,
public static void main(String[] args) {
System.out.println("Hello, World!")\u003B // <-- The Java compiler
// will make that a semicolon, but it clearly isn't one here.
}
答案 1 :(得分:2)
如果您需要非空write
函数,请使用NIO。
http://docs.oracle.com/javase/7/docs/api/index.html?java/nio/channels/FileChannel.html
那就是说,我也不太了解你的问题。
答案 2 :(得分:2)
如果你需要一种不使用分号来调用void
方法的方法,你可以使用反射而不是
/*1*/ myObject.myMethod();
/*2*/ myObject.myMethod(arg0, arg1); // myMethod(Type1 arg0, Type2 arg1)
你可以写
// 1
try {
if (myObject.getClass().getDeclaredMethod("myMethod").invoke(myObject) == null) {
}
} catch (Exception e) {
}
// 2
try {
if (myObject.getClass().getDeclaredMethod("myMethod", Type1.class, Type2.class).invoke(myObject, arg0, arg1) == null) {
}
} catch (Exception e) {
}
答案 3 :(得分:2)
您可以使用反射:
class Test {
public static void functionVoid() {
System.out.println("void from function");
}
}
然后叫它:
Method method = Test.class.getMethod("functionVoid");
Object o = method.invoke(null);
答案 4 :(得分:1)
你可以随时返回虚空...
Void myFunction() {
return null;
}
但是这个目的是什么?
答案 5 :(得分:1)
使用具有可选分号的groovy