English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
在此示例中,我们将学习将lambda表达式作为Java中的方法参数传递。
要理解此示例,您应该了解以下Java编程主题:
import java.util.ArrayList; class Main { public static void main(String[] args) { //创建一个ArrayList ArrayList<String> languages = new ArrayList<>(); //向ArrayList添加元素 languages.add("java"); languages.add("swift"); languages.add("python"); System.out.println("ArrayList: " + languages); //将lambda表达式作为参数传递给replaceAll()方法 languages.replaceAll(e -> e.toUpperCase()); System.out.println("更新后的 ArrayList: " + languages); } }
نتائج الإخراج
ArrayList: [java, swift, python] 更新后的 ArrayList: [JAVA, SWIFT, PYTHON]
在上面的示例中,我们创建了一个名为languages的数组列表。注意这一行,
languages.replaceAll(e -> e.toUpperCase());
这里,e -> e.toUpperCase()是lambda表达式。它接受arraylist的所有元素,并将它们转换为大写。
import java.util.ArrayList; import java.util.Arrays; class Main { public static void main(String[] args) { //创建一个ArrayList ArrayList<String> languages = new ArrayList<>(Arrays.asList("java", "python")); System.out.println("ArrayList: " + languages); //调用forEach()方法 //将lambda作为参数传递给forEach() //反转ArrayList的每个元素 System.out.print("反转后的 ArrayList: "); languages.forEach((e) -> { // جسم Lambda التعبير String result = ""; للتحويل (int i = e.length() - 1; i >= 0; i--) result += e.charAt(i); System.out.print(result + ", "); }); } }
نتائج الإخراج
ArrayList: [java, python] ArrayList مقلوبة: avaj, nohtyp,
في المثال السابق، قمنا بإنشاء ArrayList يحمل الاسم languages. لاحظ هذه السطر،
languages.forEach((e) -> { // جسم Lambda التعبير String result = ""; للتحويل (int i = e.length() - 1; i >= 0; i--) result += e.charAt(i); System.out.print(result + ", "); });
في هذا المثال، سنقوم بتحويل Lambda كمعامل لـArrayList forEach()الطريقة Lambda تعبر عن تحويل كل عنصر من ArrayList.