Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void Log(String format, Object ... args) {
- final Object[] fmt = new Object[ args.length ];
- for(int i = 0; i < args.length; i++)
- fmt[i] = args[i] instanceof Supplier ?
- ( (Supplier) args[i] ).get() :
- args[i];
- final String s = String.format( format, fmt );
- System.err.println( s );
- }
- final Supplier
- s = () -> "aaa",
- d = () -> 111;
- Log( "%s %d %s %d", "bbb", 222, s, d ); // OK, OUTPUT: bbb 222 aaa 111
- Log( "%s %d %s %d", "bbb", 222, () -> "aaa", () -> 111 ); // COMPILE FAIL
- Log( "%s %d %s %d", "bbb", 222, (Supplier) () -> "aaa", (Supplier) () -> 111 );
- Log( "%s %d %s %d", "bbb", 222, (Callable) () -> "aaa", (Callable) () -> 111 );
- Log( "%s %d %s %d", "bbb", 222, ((Supplier<String>)() -> "aaa"), ((Suplier<Integer>)() -> 111) );
- Log( "%s %d %s %d", "bbb", 222, new Supplier<String>() {
- @Override
- public String get() {
- return "aaa";
- }
- });
- Log( "%s %d %s %d", "bbb", 222, (Supplier<String>) () -> "aaa");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement