From 96af0dcddbaa253782a17c3533c667c29fa209de Mon Sep 17 00:00:00 2001 From: zml59 Date: Sun, 19 Jan 2020 01:15:13 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=8C=BF=E5=90=8D?= =?UTF-8?q?=E5=86=85=E9=83=A8=E7=B1=BB=E5=8C=96=E7=AE=80=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hcsp/polymorphism/NameCollector.java | 18 ------------------ .../com/github/hcsp/polymorphism/User.java | 9 +++++---- 2 files changed, 5 insertions(+), 22 deletions(-) delete mode 100644 src/main/java/com/github/hcsp/polymorphism/NameCollector.java diff --git a/src/main/java/com/github/hcsp/polymorphism/NameCollector.java b/src/main/java/com/github/hcsp/polymorphism/NameCollector.java deleted file mode 100644 index da7f2c6..0000000 --- a/src/main/java/com/github/hcsp/polymorphism/NameCollector.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.github.hcsp.polymorphism; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Consumer; - -public class NameCollector implements Consumer { - private final List names = new ArrayList<>(); - - @Override - public void accept(User user) { - names.add(user.getName()); - } - - public List getNames() { - return names; - } -} diff --git a/src/main/java/com/github/hcsp/polymorphism/User.java b/src/main/java/com/github/hcsp/polymorphism/User.java index 78d927d..526b876 100644 --- a/src/main/java/com/github/hcsp/polymorphism/User.java +++ b/src/main/java/com/github/hcsp/polymorphism/User.java @@ -1,5 +1,6 @@ package com.github.hcsp.polymorphism; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -25,10 +26,10 @@ public String getName() { // 这里使用了一个NameCollector类,请尝试将它改写成匿名内部类 // 使得代码更加集中,更加容易阅读 - public static List collectNames(List users) { - NameCollector collector = new NameCollector(); - users.forEach(collector); - return collector.getNames(); + public static List collectNames(List users) { + final List names = new ArrayList<>(); + users.forEach(user -> names.add(user.getName())); + return names; } public static void main(String[] args) { From 483131876657ef522db7a14677bbba57eb7c1207 Mon Sep 17 00:00:00 2001 From: zml59 Date: Sun, 19 Jan 2020 01:35:16 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=8C=BF=E5=90=8D?= =?UTF-8?q?=E5=86=85=E9=83=A8=E7=B1=BB=E5=8C=96=E7=AE=80=E4=BB=A3=E7=A0=81?= =?UTF-8?q?,=E5=A3=B0=E6=98=8EList=E6=97=B6=E5=A4=9A=E4=BA=86=E4=B8=80?= =?UTF-8?q?=E4=B8=AAfinal=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/github/hcsp/polymorphism/User.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/github/hcsp/polymorphism/User.java b/src/main/java/com/github/hcsp/polymorphism/User.java index 526b876..5f693fd 100644 --- a/src/main/java/com/github/hcsp/polymorphism/User.java +++ b/src/main/java/com/github/hcsp/polymorphism/User.java @@ -26,8 +26,8 @@ public String getName() { // 这里使用了一个NameCollector类,请尝试将它改写成匿名内部类 // 使得代码更加集中,更加容易阅读 - public static List collectNames(List users) { - final List names = new ArrayList<>(); + public static List collectNames(List users) { + List names = new ArrayList<>(); users.forEach(user -> names.add(user.getName())); return names; } From 744fbc37ea88144306c693327d3d0e3fd2f1a570 Mon Sep 17 00:00:00 2001 From: zml59 Date: Sun, 19 Jan 2020 01:46:41 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=8C=BF=E5=90=8D?= =?UTF-8?q?=E5=86=85=E9=83=A8=E7=B1=BB=E5=8C=96=E7=AE=80=E4=BB=A3=E7=A0=81?= =?UTF-8?q?,=E5=B0=86lambda=E8=BF=98=E5=8E=9F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/github/hcsp/polymorphism/User.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/github/hcsp/polymorphism/User.java b/src/main/java/com/github/hcsp/polymorphism/User.java index 5f693fd..224cdfb 100644 --- a/src/main/java/com/github/hcsp/polymorphism/User.java +++ b/src/main/java/com/github/hcsp/polymorphism/User.java @@ -3,6 +3,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.function.Consumer; public class User { /** 用户ID,数据库主键,全局唯一 */ @@ -26,9 +27,14 @@ public String getName() { // 这里使用了一个NameCollector类,请尝试将它改写成匿名内部类 // 使得代码更加集中,更加容易阅读 - public static List collectNames(List users) { + public static List collectNames(List users) { List names = new ArrayList<>(); - users.forEach(user -> names.add(user.getName())); + users.forEach(new Consumer() { + @Override + public void accept(User user) { + names.add(user.getName()); + } + }); return names; } From fde6665c4e5507a07716ee43f69e9fd5bf3bc550 Mon Sep 17 00:00:00 2001 From: zml59 Date: Sun, 19 Jan 2020 01:50:44 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=B8=8A=E6=AC=A1=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=80=E4=B8=AA=E5=BC=95=E7=94=A8=E6=BA=90?= =?UTF-8?q?=E5=B9=B6=E8=BF=98=E5=8E=9Flambda=EF=BC=8C=E8=BF=99=E6=AC=A1?= =?UTF-8?q?=E5=8D=95=E7=8B=AC=E4=BD=BF=E7=94=A8lambda=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E4=B8=8B=E8=83=BD=E4=B8=8D=E8=83=BD=E9=80=9A=E8=BF=87=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/github/hcsp/polymorphism/User.java | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/github/hcsp/polymorphism/User.java b/src/main/java/com/github/hcsp/polymorphism/User.java index 224cdfb..045f151 100644 --- a/src/main/java/com/github/hcsp/polymorphism/User.java +++ b/src/main/java/com/github/hcsp/polymorphism/User.java @@ -27,14 +27,9 @@ public String getName() { // 这里使用了一个NameCollector类,请尝试将它改写成匿名内部类 // 使得代码更加集中,更加容易阅读 - public static List collectNames(List users) { + public static List collectNames(List users) { List names = new ArrayList<>(); - users.forEach(new Consumer() { - @Override - public void accept(User user) { - names.add(user.getName()); - } - }); + users.forEach(user -> names.add(user.getName())); return names; }