عندما نستخدم تعبيرات لامدا، فإن العملية الأكثر شيوعًا هي المطابقة. ومع ذلك، هناك العديد من الطرق في الواجهة، وسيشعر بعض الأصدقاء بالارتباك عند المطابقة. ما يمكننا توضيحه هو أن لامدا يمكنها مطابقة الواجهات، لذلك سيتم شرح تعليمات المطابقة المحددة أدناه، جنبًا إلى جنب مع رمز المثال ذي الصلة.
1. الوصف
(1) يمكن لكل لامدا مطابقة نوع معين من خلال واجهة محددة. يجب أن تحتوي ما يسمى بالواجهة الوظيفية على إعلان طريقة مجردة واحد فقط. يجب أن يتطابق كل تعبير لامدا المطابق له مع إعلان الطريقة المجردة. بما أن الطرق الافتراضية ليست مجردة، فلا تتردد في إضافة طرق افتراضية إلى الواجهة الوظيفية الخاصة بك.
(2) يمكن استخدام أي واجهة تحتوي على طريقة مجردة واحدة فقط لتعبيرات لامدا. لكي تفي الواجهة المحددة بالمتطلبات، يجب أن يتم وضع علامة على الواجهة بـ @FunctionalInterface. إذا تم تعريف طريقة مجردة ثانية في الواجهة، فسوف يلاحظ المترجم هذا التعليق التوضيحي ويطرح استثناءً.
2. مثال
@الواجهة الوظيفية محول الواجهة<F, T> { تحويل T(F من)؛ } Converter<String, Integer> converter = (from) -> Integer.valueOf(from); عدد صحيح تم تحويله = converter.convert("123"); System.out.println(محول);//123
لاحظ أن البرنامج صحيح أيضًا إذا لم تتم كتابة التعليق التوضيحي @FunctionalInterface.
ما ورد أعلاه هو طريقة مطابقة تعبيرات Lambda في واجهات Java، وأعتقد أن كل شخص لديه فهم جديد لاستخدام تعبيرات Lambda في هذه المقالة، يرجى ممارسة ذلك في أقرب وقت ممكن بعد تعلمه.