KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > commons > collections > primitives > DoubleCollections


1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17 package org.apache.commons.collections.primitives;
18
19 import org.apache.commons.collections.primitives.decorators.UnmodifiableDoubleIterator;
20 import org.apache.commons.collections.primitives.decorators.UnmodifiableDoubleList;
21 import org.apache.commons.collections.primitives.decorators.UnmodifiableDoubleListIterator;
22
23 /**
24  * This class consists exclusively of static methods that operate on or
25  * return DoubleCollections.
26  * <p>
27  * The methods of this class all throw a NullPoDoubleerException if the
28  * provided collection is null.
29  *
30  * @version $Revision: 480460 $ $Date: 2006-11-29 00:14:21 -0800 (Wed, 29 Nov 2006) $
31  *
32  * @author Rodney Waldhoff
33  */

34 public final class DoubleCollections {
35
36     /**
37      * Returns an unmodifiable DoubleList containing only the specified element.
38      * @param value the single value
39      * @return an unmodifiable DoubleList containing only the specified element.
40      */

41     public static DoubleList singletonDoubleList(double value) {
42         // TODO: a specialized implementation of DoubleList may be more performant
43
DoubleList list = new ArrayDoubleList(1);
44         list.add(value);
45         return UnmodifiableDoubleList.wrap(list);
46     }
47
48     /**
49      * Returns an unmodifiable DoubleIterator containing only the specified element.
50      * @param value the single value
51      * @return an unmodifiable DoubleIterator containing only the specified element.
52      */

53     public static DoubleIterator singletonDoubleIterator(double value) {
54         return singletonDoubleList(value).iterator();
55     }
56
57     /**
58      * Returns an unmodifiable DoubleListIterator containing only the specified element.
59      * @param value the single value
60      * @return an unmodifiable DoubleListIterator containing only the specified element.
61      */

62     public static DoubleListIterator singletonDoubleListIterator(double value) {
63         return singletonDoubleList(value).listIterator();
64     }
65
66     /**
67      * Returns an unmodifiable version of the given non-null DoubleList.
68      * @param list the non-null DoubleList to wrap in an unmodifiable decorator
69      * @return an unmodifiable version of the given non-null DoubleList
70      * @throws NullPointerException if the given DoubleList is null
71      * @see org.apache.commons.collections.primitives.decorators.UnmodifiableDoubleList#wrap
72      */

73     public static DoubleList unmodifiableDoubleList(DoubleList list) throws NullPointerException JavaDoc {
74         if(null == list) {
75             throw new NullPointerException JavaDoc();
76         }
77         return UnmodifiableDoubleList.wrap(list);
78     }
79     
80     /**
81      * Returns an unmodifiable version of the given non-null DoubleIterator.
82      * @param iter the non-null DoubleIterator to wrap in an unmodifiable decorator
83      * @return an unmodifiable version of the given non-null DoubleIterator
84      * @throws NullPointerException if the given DoubleIterator is null
85      * @see org.apache.commons.collections.primitives.decorators.UnmodifiableDoubleIterator#wrap
86      */

87     public static DoubleIterator unmodifiableDoubleIterator(DoubleIterator iter) {
88         if(null == iter) {
89             throw new NullPointerException JavaDoc();
90         }
91         return UnmodifiableDoubleIterator.wrap(iter);
92     }
93         
94     /**
95      * Returns an unmodifiable version of the given non-null DoubleListIterator.
96      * @param iter the non-null DoubleListIterator to wrap in an unmodifiable decorator
97      * @return an unmodifiable version of the given non-null DoubleListIterator
98      * @throws NullPointerException if the given DoubleListIterator is null
99      * @see org.apache.commons.collections.primitives.decorators.UnmodifiableDoubleListIterator#wrap
100      */

101     public static DoubleListIterator unmodifiableDoubleListIterator(DoubleListIterator iter) {
102         if(null == iter) {
103             throw new NullPointerException JavaDoc();
104         }
105         return UnmodifiableDoubleListIterator.wrap(iter);
106     }
107     
108     /**
109      * Returns an unmodifiable, empty DoubleList.
110      * @return an unmodifiable, empty DoubleList.
111      * @see #EMPTY_DOUBLE_LIST
112      */

113     public static DoubleList getEmptyDoubleList() {
114         return EMPTY_DOUBLE_LIST;
115     }
116     
117     /**
118      * Returns an unmodifiable, empty DoubleIterator
119      * @return an unmodifiable, empty DoubleIterator.
120      * @see #EMPTY_DOUBLE_ITERATOR
121      */

122     public static DoubleIterator getEmptyDoubleIterator() {
123         return EMPTY_DOUBLE_ITERATOR;
124     }
125     
126     /**
127      * Returns an unmodifiable, empty DoubleListIterator
128      * @return an unmodifiable, empty DoubleListIterator.
129      * @see #EMPTY_DOUBLE_LIST_ITERATOR
130      */

131     public static DoubleListIterator getEmptyDoubleListIterator() {
132         return EMPTY_DOUBLE_LIST_ITERATOR;
133     }
134
135     /**
136      * An unmodifiable, empty DoubleList
137      * @see #getEmptyDoubleList
138      */

139     public static final DoubleList EMPTY_DOUBLE_LIST = unmodifiableDoubleList(new ArrayDoubleList(0));
140
141     /**
142      * An unmodifiable, empty DoubleIterator
143      * @see #getEmptyDoubleIterator
144      */

145     public static final DoubleIterator EMPTY_DOUBLE_ITERATOR = unmodifiableDoubleIterator(EMPTY_DOUBLE_LIST.iterator());
146
147     /**
148      * An unmodifiable, empty DoubleListIterator
149      * @see #getEmptyDoubleListIterator
150      */

151     public static final DoubleListIterator EMPTY_DOUBLE_LIST_ITERATOR = unmodifiableDoubleListIterator(EMPTY_DOUBLE_LIST.listIterator());
152 }
153
Popular Tags