.. java:import:: java.util Collection .. java:import:: java.util Iterator Set === .. java:package:: com.ampl :noindex: .. java:type:: public class Set extends BasicEntity Represents an AMPL set. In case of not indexed sets, this class exposes functionalities of a Java Set for accessing its elements. The members of the set can be strings, double numbers or :java:ref:`tuples `. Moreover, the inherited :java:ref:`Set.getValues` can be used to get all the members in :java:ref:`DataFrame` class. All these methods throw an :java:ref:`UnsupportedOperationException` if called for an indexed set. In case of indexed sets, use the method :java:ref:`Set.get` to obtain the objects of type :java:ref:`SetInstance`, from which to access all properties (see section :ref:`secAccessInstancesAndValues` for further information on how to access set instances). Data can be assigned to the set using the methods :java:ref:`Set.setValues`, or using :java:ref:`AMPL.setData` and an object of class :java:ref:`DataFrame`. Constructors ------------ Set ^^^ .. java:constructor:: public Set(Entity entity) :outertype: Set Constructor Set ^^^ .. java:constructor:: protected Set(SetBase impl) :outertype: Set Methods ------- arity ^^^^^ .. java:method:: public int arity() :outertype: Set The dimension of s, or number of components in each member of this set contains ^^^^^^^^ .. java:method:: public boolean contains(Object o) :outertype: Set Check contents. See :java:ref:`SetInstance.contains`. Valid only for not indexed sets. :param o: Tuple to be searched for :return: True if the object is present containsAll ^^^^^^^^^^^ .. java:method:: public boolean containsAll(double[] c) :outertype: Set Check if the sets contains all the elements in the collection c. Each element in the collection can be a double, a String, a Tuple or an array. In case of arrays, each array is considered as a Tuple. See :java:ref:`SetInstance.containsAll`. Valid only for not indexed sets. :param c: The collection containing the elements to find. containsAll ^^^^^^^^^^^ .. java:method:: public boolean containsAll(int[] c) :outertype: Set containsAll ^^^^^^^^^^^ .. java:method:: public boolean containsAll(String[] c) :outertype: Set containsAll ^^^^^^^^^^^ .. java:method:: public boolean containsAll(Collection c) :outertype: Set get ^^^ .. java:method:: @Override public SetInstance get() :outertype: Set Get the set instance (for not indexed sets) :throws UnsupportedOperationException: if the set is indexed :throws IllegalStateException: If the entity has been deleted in the underlying AMPL interpreter. get ^^^ .. java:method:: @Override public final SetInstance get(Object... key) :outertype: Set Get the set instance corresponding to the specified key. See :ref:`secAccessInstancesAndValues` for further information on how the key can be specified. :throws IllegalArgumentException: if trying to access an instance with the wrong number of keys (see :java:ref:`Entity.indexarity`) :throws IllegalStateException: if the entity has been deleted in the underlying AMPL interpreter :return: The instance corresponding to the specified key. Null if the specified key is not present. get ^^^ .. java:method:: @Override public final SetInstance get(Tuple key) :outertype: Set Get the set instance corresponding to the specified key (passed as a Tuple). See :ref:`secAccessInstancesAndValues` for further information on how the key can be specified. :param key: The indexing tuple of the instance to be found :throws IllegalArgumentException: if trying to access an instance with the wrong number of keys (see :java:ref:`Entity.indexarity`) :throws IllegalStateException: if the entity has been deleted in the underlying AMPL interpreter :return: The instance corresponding to the specified key. Null if the specified key is not present. getValues ^^^^^^^^^ .. java:method:: @Override public DataFrame getValues() :outertype: Set Returns a DataFrame containing all the members of this set. The DataFrame will have a number of index columns equal to the arity of this set and a number of rows equal to the number of members. impl ^^^^ .. java:method:: SetBase impl() :outertype: Set isEmpty ^^^^^^^ .. java:method:: public boolean isEmpty() :outertype: Set Return true if the set is empty. Valid only for not indexed sets. iterator ^^^^^^^^ .. java:method:: @Override public Iterator iterator() :outertype: Set members ^^^^^^^ .. java:method:: public MemberRange members() :outertype: Set If the set is not indexed, get the iterator for this set, allowing easy access to its elements, as in: .. parsed-literal:: ampl.eval("set A := {'a', 'b', 3};"); for (Object o : ampl.getSet("A")) { // ... } :throws UnsupportedOperationException: if used on an indexed set setValues ^^^^^^^^^ .. java:method:: public void setValues(DataFrame data) :outertype: Set setValues ^^^^^^^^^ .. java:method:: public void setValues(Tuple[] objects) :outertype: Set Assign values to the this set. See :java:ref:`SetInstance.setValues` for the usage instructions. setValues ^^^^^^^^^ .. java:method:: public void setValues(Tuple value) :outertype: Set setValuesFlattened ^^^^^^^^^^^^^^^^^^ .. java:method:: public void setValuesFlattened(double... objects) :outertype: Set setValuesFlattened ^^^^^^^^^^^^^^^^^^ .. java:method:: public void setValuesFlattened(String... objects) :outertype: Set size ^^^^ .. java:method:: public int size() :outertype: Set Get the size of the set (number of elements) (valid only for not indexed sets) :throws UnsupportedOperationException: if used on an indexed set toArray ^^^^^^^ .. java:method:: public Object[] toArray() :outertype: Set Convert this set to an array. Valid only for not indexed sets. toSet ^^^^^ .. java:method:: public java.util.Set toSet() :outertype: Set Convert this set to a Java set. Valid only for not indexed sets.