How do I display the smallest number in a collection?

ryanbecker24
ryanbecker24 used Ask the Experts™
on
I keep getting an error at public void displaySmallest()

This is my code:

import java.util.ArrayList;


public class Numbers {
    private ArrayList<Double> numbers;

    public Numbers() {
        numbers = new ArrayList<Double>();
    }

    /**
     *Add a number to the collection in a client specified position or at the end of the collection
     */
    public void addNumber(double number)
    {
        numbers.add(number);
    }

    /**
     * Display all numbers in the collection
     */
    public void displayNumbers()
    {
        int number = 0;

        while (number < numbers.size()) {
            System.out.println(numbers.get(number));
            number++;
        }
    }

    /**
     * Display all numbers in the collection organized in 2 categories, first the positive numbers, second the
     *negative numbers
     */
    public void displayNumbersInCategories()
    {
        System.out.println("Positive Numbers");

        int number = 0;

        while (number < numbers.size()) {
            if (numbers.get(number) >= 0.0) {
                System.out.println(numbers.get(number));
            }

            number++;
        }

        System.out.println("Negative Numbers");

        for (Double aNumber : numbers) {
            if (aNumber < 0.0) {
                System.out.println(aNumber);
            }
        }
    }

    /**
    * Display the sum of all numbers in the collection
    */
    public void displaySum()
    {
        double sum = 0.0;
        int length = this.numbers.size();
        int counter = 0;

        while (counter < length) {
            sum = sum + this.numbers.get(counter);
            counter++;
        }

        System.out.println(sum);
    }

    /**
    * Display 2 sums: the sum of all positive numbers in the collection and the sum of all negative numbers in
    * the collection
    */
    public void displaySumsInCategories()
    {
        double sum = 0.0;
        int length = this.numbers.size();
        int counter = 0;
        System.out.println("Positive Numbers");

        while (counter < length)
        {
            sum = sum + this.numbers.get(counter);
            counter++;
        }
       

        System.out.println(sum);
        //}
        System.out.println("Negative Numbers");

        for (Double aSum : numbers)
        {
            if (aSum < 0.0)
            {
                System.out.println(aSum);
            }
        }
    }


/**
 * Display the average of all the positive numbers
 */

public void displayPositiveAvg()
{
  double sum = 0.0;
  int count = 0;
  for(Double number : numbers)
  {
    if(number > 0.0)
    {
      sum += number;
      count++;
    }
  }

  System.out.println("Average is " + (sum / count));
}    
}

 
/**
* Display the smallest number in the collection
*/

public void displaySmallestNumber()

Double smallest = Double.MAX_VALUE;
        for (Double aNumber : numbers)
        {
            if (aNumber < smallest)
            {  
                smallest = aNumber;
            }
        }
System.out.println("value" + smallest);
}
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Commented:
you need to move some brackets around. After displayPositiveInteger you need to put that bracket at the end. You need one after displaySmallestNumber and at the end of it to close the class.
System.out.println("Average is " + (sum / count));
}    


 
/**
* Display the smallest number in the collection
*/

public void displaySmallestNumber(){

Double smallest = Double.MAX_VALUE;
        for (Double aNumber : numbers)
        {
            if (aNumber < smallest)
            {  
                smallest = aNumber;
            }
        }
System.out.println("value" + smallest);
} 
}

Open in new window

isn't it the same question as?
http://www.experts-exchange.com/Programming/Languages/Java/New_to_Java/Q_26553146.html#a33935056

please respond to my clarification question in that link

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial