Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा में फंक्शन और प्रेडिकेट के बीच अंतर 8

जावा में कार्यात्मक प्रोग्रामिंग को लागू करने के लिए जावा 8 में फ़ंक्शन और प्रेडिकेट दोनों कार्यात्मक इंटरफ़ेस पेश किए गए थे।

फ़ंक्शन इंटरफ़ेस का उपयोग परिवर्तन करने के लिए किया जाता है। यह एक तर्क को स्वीकार कर सकता है और परिणाम उत्पन्न कर सकता है। दूसरी ओर, विधेय भी केवल एक तर्क को स्वीकार कर सकता है लेकिन यह केवल बूलियन मान लौटा सकता है। इसका उपयोग स्थिति का परीक्षण करने के लिए किया जाता है।

Sr. नहीं. कुंजी फ़ंक्शन विधेय करें
1
मूलभूत
यह 2 प्रकार के पैरामीटर ले सकता है पहला इनपुट प्रकार तर्क प्रकार का प्रतिनिधित्व करता है और दूसरा रिटर्न प्रकार का प्रतिनिधित्व करता है।
यह एक प्रकार का पैरामीटर ले सकता है जो इनपुट प्रकार या तर्क प्रकार का प्रतिनिधित्व करता है।
2
वापसी प्रकार
यह किसी भी प्रकार का मान लौटा सकता है।
यह केवल बूलियन मान लौटा सकता है
3
विधि
इसमें अमूर्त विधि लागू होती है ()।
इसमें एब्स्ट्रैक्ट मेथड टेस्ट() है।
4.
केस का प्रयोग करें
इसका उपयोग सशर्त जांच को लागू करने के लिए किया जा सकता है
इसका उपयोग परिवर्तन और वापसी मूल्यों के लिए किया जा सकता है।

विधेय का उदाहरण

public class Main {
   public static void main(String args[]) {
      List<Integer> numList = new ArrayList<>();
      numList.add(5);
      numList.add(10);
      Predicate<Integer> pred = i -> i > 5;
      numList.stream().filter(pred).forEach(i -> System.out.println(i));
   }
}

फ़ंक्शन का उदाहरण

public class Main {
   public static void main(String args[]) {
      List<Integer> numList = new ArrayList<>();
      numList.add(78);
      numList.add(10);
      Function<Integer, Integer> fun = i -> i / 2;
      numList.stream().map(fun).forEach(System.out::println);    
   }
}

  1. जावा में सीरियलाइज़ेशन और एक्सटर्नलाइज़ेशन के बीच अंतर

    सीरियलाइज़ेशन और एक्सटर्नलाइज़ेशन दोनों किसी ऑब्जेक्ट को स्ट्रीम बाइट में बदलने और डेटाबेस या मेमोरी में बाइट स्ट्रीम को स्टोर करने की प्रक्रियाएँ हैं। java.io.Serializable इंटरफ़ेस को लागू करने वाले वर्ग को क्रमबद्ध किया जा सकता है। दूसरी ओर, आवेदन में आवश्यकता के आधार पर कस्टम क्रमांकन के लिए उपयो

  1. जावा में इटरेटर और एन्यूमरेशन के बीच अंतर

    इटरेटर और एन्यूमरेशन दोनों ही संग्रह से किसी तत्व को पार करने और एक्सेस करने के लिए कर्सर हैं। वे दोनों संग्रह ढांचे से संबंधित हैं। संग्रह ढांचे में JDK1.0 और Iterator में JDK.1.2 संस्करण में गणना जोड़ी गई थी। एन्यूमरेशन संग्रह में संरचनात्मक परिवर्तन नहीं कर सकता क्योंकि इसमें संग्रह में तत्व तक

  1. जावा में ऐरेलिस्ट और हैशसेट के बीच अंतर

    हैशसेट और ऐरेलिस्ट दोनों ही जावा संग्रह ढांचे के कुछ सबसे महत्वपूर्ण वर्ग हैं। ArrayList और हैशसेट के बीच महत्वपूर्ण अंतर निम्नलिखित हैं। सीनियर। नहीं. कुंजी ऐरेलिस्ट हैशसेट 1 कार्यान्वयन ArrayList सूची इंटरफ़ेस का कार्यान्वयन है। दूसरी ओर हैशसेट एक सेट इंटरफ़ेस का कार्यान्वयन है। 2 आंतरिक क