6 منابع مرجع – جامعه dev

1 عبارات لامبدا و کاهش کد
-
Lambdas استفاده از تماس های برگشتی عملکردی و رابط هایی مانند ActionListener را ساده می کند.
-
اصطلاح پاسخ به تماس به عملکردی اشاره دارد که به عنوان یک آرگومان برای یک عملکرد/روش دیگر منتقل می شود و معمولاً در پاسخ به یک رویداد یا عمل ، در بعضی مواقع فراخوانی می شود.
-
مشکل عمودی را از بین ببرید (بسیاری از خطوط برای اقدامات ساده).
2 ساختن همه کاربران تعدیل کننده
- با Lambda می توانیم برای هر کاربر یک روش تماس بگیریم و تماس بگیریم:
usuarios.forEach(u -> u.tornaModerador());
- این می تواند با استفاده از روش مرجع ساده شود:
usuarios.forEach(Usuario::tornaModerador);
3 مرجع روش Entendendo
-
نحو این است: کلاس :: روش ، بدون پرانتز.
-
روش foreach انتظار مصرف کننده را دارد و کاربر :: MakerDeador متناسب با این نوع عملکردی است.
Consumer
usuarios.forEach(tornaModerador);
4 مزیت مرجع روش
-
این به عنوان یک بیان لامبدا کار می کند ، اما مختصر تر است.
-
از بازتاب استفاده نمی کند ، یعنی بر عملکرد تأثیر نمی گذارد.
-
در زمان تدوین بدون سربار اضافی حل شد.
مقایسه حتی لاغر تر
1 ساده سازی مقایسه با مرجع روش
- ما می توانیم لیستی از کاربران را با استفاده از مقایسه کننده. comparating با یک عبارت lambda سفارش دهیم:
usuarios.sort(Comparator.comparing(u -> u.getNome()));
- این می تواند با استفاده از روش مرجع ساده شود:
usuarios.sort(Comparator.comparing(Usuario::getNome));
بایگانی: SimplificandCompan.java
2 بهبود خوانایی با واردات استاتیک
- ما می توانیم کد را در هنگام واردات استاتیک مقایسه کننده مسلط و قابل خواندن تر کنیم و عملکرد را برای یک متغیر استخراج کنیم:
import static java.util.Comparator.comparing;
Function
usuarios.sort(comparing(byName));
3 مزیت رویکرد
-
کد لاغر و قابل خواندن.
-
از پرانتزهای غیر ضروری در لامبدا خودداری کنید.
-
سیالیت و وضوح بهتر با نامگذاری عملکرد مقایسه (نام).