From cfd65492d2f5e9215a2fa1764ca715e2fce7936c Mon Sep 17 00:00:00 2001 From: RedKale <22250530@qq.com> Date: Thu, 23 Jun 2016 11:29:13 +0800 Subject: [PATCH] --- redkale-1.0.1284.jar => redkale-1.0.1285.jar | Bin 688364 -> 688524 bytes src/org/redkale/util/Sheet.java | 13 +++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) rename redkale-1.0.1284.jar => redkale-1.0.1285.jar (92%) diff --git a/redkale-1.0.1284.jar b/redkale-1.0.1285.jar similarity index 92% rename from redkale-1.0.1284.jar rename to redkale-1.0.1285.jar index df2db4de1eb3c0da7e3a0380624683e17bc0bfa5..dc19dbd45f67e082856b771e630338a05e6c2b39 100644 GIT binary patch delta 9854 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 A!vFvP diff --git a/src/org/redkale/util/Sheet.java b/src/org/redkale/util/Sheet.java index cc95a2ebf..fea7c1cbf 100644 --- a/src/org/redkale/util/Sheet.java +++ b/src/org/redkale/util/Sheet.java @@ -18,7 +18,9 @@ import java.util.function.Consumer; * @param 集合元素的数据类型 */ @SuppressWarnings("unchecked") -public class Sheet implements java.io.Serializable { +public class Sheet implements java.io.Serializable, Iterable { + + private static final List EMPTYLIST = new ArrayList(); private long total = -1; @@ -91,9 +93,16 @@ public class Sheet implements java.io.Serializable { this.rows = (Collection) data; } - public void forEach(final Consumer consumer) { + @Override + public Iterator iterator() { + return (this.rows == null) ? EMPTYLIST.iterator() : this.rows.iterator(); + } + + @Override + public void forEach(final Consumer consumer) { if (consumer != null && this.rows != null && !this.rows.isEmpty()) { this.rows.forEach(consumer); } } + }