# Java: Dialog I/O: Kilometers to Miles with method

      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
     11
     12
     13
     14
     15
     16
     17
     18
     19
     20
     21
     22
     23
     24
     25
     26
     27
     28
     29
     30
     31
     32
     33
     34
     35
     36
     37
     38
    // intro-dialog/KmToMilesMethod.java

    // Convert kilometers to miles using a method.  JOptionPane IO.
    // Michael Maus, 28 Oct 2004

    import javax.swing.*;

    public class KmToMilesMethod {

        //================================================================= main
        public static void main(String[] args) {
            //... Local variables
            String kmStr;    // String km before conversion to double.
            double km;       // Number of kilometers.
            double mi;       // Number of miles.

            //... Input
            kmStr = JOptionPane.showInputDialog(null, "Enter kilometers.");
            km = Double.parseDouble(kmStr);

            //... Computation
            mi = convertKmToMi(km);                                     //Note 1

            //... Output
            JOptionPane.showMessageDialog(null, km + " kilometers is "
                                              + mi + " miles.");

            //... Stop
            System.exit(0);  // Stop GUI program
        }

        //========================================================= convertKmToMi
        public static double convertKmToMi(double kilometers) {
            // Assume there are 0.621 miles in a kilometer.
            double miles = kilometers * 0.621;
            return miles;
        }
    }

## Notes

Note 1: Call a function to do the conversion. Altho this function is trivial, just a multiplication, it is very good practice to separate the "model" or "logic" of the program from user interface. As programs become larger, this separation becomes essential.