Java 8 - أمثلة على حلقة forEvery
يوفر Java 8 ميزات إضافية وطرقا جديدة لإجراء التصفح. هناك سيناريوهات تكون فيها هذه المفاهيم الجديدة أكثر أداء وموصى بها.تركز غالبية ميزات Java 8 على تعبيرات lambda ، بالإضافة إلى الميزات ذات الصلة مثل التدفقات والأساليب والواجهات. ميزة أخرى في Java 8 هي النمط لكل < / span>.
forEach() ليكون أسرع من حلقة لكل حلقة ، في Java 8 الواجهة iterable< / span> الطريقة المثلى لاجتياز العناصر بدلا من الطريقة القياسية للعبور
في هذه المقالة ، ستتعلم كيفية التكرار من خلال نمط java.util.List ونمط java.util.Map مع حلقة جديدة forEach من java 8.
forEvery و java.util.Map
يوضح هذا الرمز الطريقة المعتادة لتصفح نمط Map:Mapmap = HashMap جديد< > ();
map.put(1, "A");
map.put(2, "B");
map.put(3, "C");
map.put(4, "D");
map.put(5, "E");
for (Map.Entryentry: map.entrySet()) {
System.out.println("Key: " + entry.getKey() + " القيمة: " + entry.getValue());
}
< / string >< / string >< / pre> باستخدام Java 8 ، يمكنك تصفح نمط Map مع حلقة forEvery وlambda.Mapmap = HashMap جديد< > ();
map.put(1, "A");
map.put(2, "B");
map.put(3, "C");
map.put(4, "D");
map.put(5, "E");
items.forEach((k,v)-> System.out.println ("مفتاح: " + k + " القيمة: " + v)) ؛
items.forEach((k,v)->{
System.out.println ("مفتاح: " + k + " القيمة: " + v) ؛
if("D".equals(v)){
System.out.println("D");
}
})؛
< / string >< / pre>forEvery و java.util.List< / h2>
يوضح مثال الكود هذا الاستعراض المعتاد باستخدام نمط من أجل:Listarraylist = ArrayList جديد< > ();
arraylist.add("A");
arraylist.add("B");
arraylist.add("C");
arraylist.add("D");
arraylist.add("E");
arraylist.add("F");
for(String val: arraylist){
System.out.println(val);
}
< / string >< / pre>< / div> في Java 8 ، يمكنك تصفح نمط قائمة< / سبان> مع نمط لكل < / سبان> تعبير لامدا أو مرجع الطريقة.
< pre class = "prettyprint lang-java" >قائمة الصفائف = قائمة الصفيف الجديدة< > ();
arraylist.add("AB");
arraylist.add("BC");
arraylist.add("CD");
arraylist.add("DE");
arraylist.add("EF");
arraylist.add("FG")؛
/ / lambda
arraylist.forEach(item-> System.out.println (البند)) ؛
arraylist.forEach(item->{
if("D".equals(item)){
System.out.println(item);
}
})؛
//method reference
arraylist.forEach(System.out::p rintln);
//إنشاء مرشح باستخدام stream()
//يجب أن يظهر إخراج القرص المضغوط
arraylist.stream()
.filter(s-> s.contains("CD")))
.forEach(System.out::p rintln); < / قبل > المراجع:
Javadoc: Java 8 - forEach< / a>