Botre Posted September 7, 2014 Posted September 7, 2014 (edited) public class Interval { private final long firstEntry; private final long lastEntry; private final boolean includeFirstEntry; private final boolean includeLastEntry; public Interval(final boolean includeFirstEntry, final long firstEntry, final long lastEntry, final boolean includeLastEntry) { this.firstEntry = firstEntry; this.lastEntry = lastEntry; this.includeFirstEntry = includeFirstEntry; this.includeLastEntry = includeLastEntry; } public boolean contains(long n) { return (n == firstEntry && includeFirstEntry) || (n == lastEntry && includeLastEntry) || (n > firstEntry && n < lastEntry); } } Edited September 7, 2014 by Botrepreneur 1
darkxor Posted September 7, 2014 Posted September 7, 2014 Can just make always not including firstEntry, lastEntry? And like if(includeFirstEntry) firstEntry--; if(includeLastEntry) lastEntry++;
Botre Posted September 7, 2014 Author Posted September 7, 2014 (edited) Can just make always not including firstEntry, lastEntry? And like if(includeFirstEntry) firstEntry--; if(includeLastEntry) lastEntry++; I see what you mean, I could but I prefer the boolean specification because it mimics the mathematical notation for intervals. [ 1, 40 [ = Edited September 7, 2014 by Botrepreneur
Joseph Posted September 7, 2014 Posted September 7, 2014 (edited) I see what you mean, I could but I prefer the boolean specification because it mimics the mathematical notation for intervals. [ 1, 40 [ = i see what you mean, it does look like it i think you meant [ 1,40 ) Edited September 7, 2014 by josedpay
Botre Posted September 7, 2014 Author Posted September 7, 2014 i see what you mean, it does look like it i think you meant [ 1,40 ) Both notations are accepted by the ISO 80000-2