2017-10-24 8 views
6

मैं की तरह एक साधारण Runnable लैम्ब्डा का उपयोग कर बना सकते हैं,।Runnable और लैम्ब्डा

अभ्यास में, Runnable अक्सर जानकारी लेने जब यह बनाते समय, निम्न की तरह:

class MyRunnable implements Runnable { 
    private final String message; 

    public MyRunnable(String message) { 
     this.message = message; 
    } 

    @Override 
    public void run() { 
     System.out.println(message); 
    } 
} 

मैं Runnable कि निर्माता तर्क ले सकता है के लिए लैम्ब्डा बनाने का तरीका पूछना होगा।

+2

से पैरामीटर होने यह एक 'Runnable' होना जरूरी है साथ कोई समस्या नहीं है? आप 'उपभोक्ता ' का उपयोग कर सकते हैं। – Eran

+0

दो कोड स्निपेट के बीच क्या अंतर है, वे वही काम करते हैं, आप पहले स्निपेट – luk2302

+0

@eran में संदेश फाइनल भी बना सकते हैं, मेरे मामले में, मैं थ्रेड या एक्जिक्यूटर में रननेबल का उपयोग करता हूं, ऐसा लगता है कि उपभोक्ता नहीं है ' मेरे मामले के लिए काम नहीं करते हैं। – Tom

उत्तर

4

बाहर

private void runableWithParameter(final String message) { 
    final Runnable runnable =()->{ 
     System.out.println(message); 
    }; 
} 
संबंधित मुद्दे