Converter Application in java using package
Objective : Develop a java program to implement currency converter (Dollar to INR, EURO to INR, Yen to INR and vice versa), distance converter (meter to KM, miles to KM and vice versa), time converter (hours to minutes, seconds and vice versa) using packages.
Code:
// Package for currency conversion
package converters.currency;
public class CurrencyConverter {
public static double dollarToINR(double dollar) { return dollar * 83.0; }
public static double inrToDollar(double inr) { return inr / 83.0; }
public static double euroToINR(double euro) { return euro * 90.0; }
public static double inrToEuro(double inr) { return inr / 90.0; }
public static double yenToINR(double yen) { return yen * 0.56; }
public static double inrToYen(double inr) { return inr / 0.56; }
}
// Package for distance conversion
package converters.distance;
public class DistanceConverter {
public static double metersToKM(double meters) { return meters / 1000.0; }
public static double kmToMeters(double km) { return km * 1000.0; }
public static double milesToKM(double miles) { return miles * 1.609; }
public static double kmToMiles(double km) { return km / 1.609; }
}
// Package for time conversion
package converters.time;
public class TimeConverter {
public static double hoursToMinutes(double hours) { return hours * 60.0; }
public static double minutesToHours(double minutes) { return minutes / 60.0; }
public static double secondsToMinutes(double seconds) { return seconds / 60.0; }
public static double minutesToSeconds(double minutes) { return minutes * 60.0; }
}
// Main class with user interaction
import java.util.Scanner;
import converters.currency.CurrencyConverter;
import converters.distance.DistanceConverter;
import converters.time.TimeConverter;
public class ConverterApp {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("Select conversion type:");
System.out.println("1. Currency Converter");
System.out.println("2. Distance Converter");
System.out.println("3. Time Converter");
System.out.println("4. Exit");
int choice = scanner.nextInt();
if (choice == 4) break;
double value, result;
switch (choice) {
case 1:
System.out.println("Select conversion: 1. Dollar to INR, 2. INR to Dollar, 3. Euro to INR, 4. INR to Euro, 5. Yen to INR, 6. INR to Yen");
int currencyChoice = scanner.nextInt();
System.out.println("Enter amount: ");
value = scanner.nextDouble();
result = switch (currencyChoice) {
case 1 -> CurrencyConverter.dollarToINR(value);
case 2 -> CurrencyConverter.inrToDollar(value);
case 3 -> CurrencyConverter.euroToINR(value);
case 4 -> CurrencyConverter.inrToEuro(value);
case 5 -> CurrencyConverter.yenToINR(value);
case 6 -> CurrencyConverter.inrToYen(value);
default -> 0;
};
System.out.println("Converted value: " + result);
break;
case 2:
System.out.println("Select conversion: 1. Meters to KM, 2. KM to Meters, 3. Miles to KM, 4. KM to Miles");
int distanceChoice = scanner.nextInt();
System.out.println("Enter distance: ");
value = scanner.nextDouble();
result = switch (distanceChoice) {
case 1 -> DistanceConverter.metersToKM(value);
case 2 -> DistanceConverter.kmToMeters(value);
case 3 -> DistanceConverter.milesToKM(value);
case 4 -> DistanceConverter.kmToMiles(value);
default -> 0;
};
System.out.println("Converted value: " + result);
break;
case 3:
System.out.println("Select conversion: 1. Hours to Minutes, 2. Minutes to Hours, 3. Seconds to Minutes, 4. Minutes to Seconds");
int timeChoice = scanner.nextInt();
System.out.println("Enter time value: ");
value = scanner.nextDouble();
result = switch (timeChoice) {
case 1 -> TimeConverter.hoursToMinutes(value);
case 2 -> TimeConverter.minutesToHours(value);
case 3 -> TimeConverter.secondsToMinutes(value);
case 4 -> TimeConverter.minutesToSeconds(value);
default -> 0;
};
System.out.println("Converted value: " + result);
break;
default:
System.out.println("Invalid choice, try again.");
}
}
scanner.close();
System.out.println("Thank you for using the converter!");
}
}
│── ConverterApp.java
│── converters\
│ ├── currency\
│ │ ├── CurrencyConverter.java
│ ├── distance\
│ │ ├── DistanceConverter.java
│ ├── time\
│ ├── TimeConverter.java
Output:
Compilation of source codes for class file of packages:
Runing of the Main class :