Anonymus_Soul

Untitled

Apr 30th, 2020
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.75 KB | None | 0 0
  1. package homero2;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.FileReader;
  5. import java.io.IOException;
  6. import java.nio.file.Files;
  7. import java.nio.file.Paths;
  8. import java.nio.file.StandardOpenOption;
  9. import java.util.ArrayList;
  10. import java.util.Arrays;
  11. import java.util.Collection;
  12. import java.util.Comparator;
  13.  
  14. import homero2.Homerseklet2.mertekegyseg;
  15.  
  16. public class HoProba2 {
  17.  
  18.     public static void main(String[] args) throws IOException {
  19.         BufferedReader Read = new BufferedReader(new FileReader("in.txt"));
  20.         String sor;
  21.         String dbs[];
  22.         ArrayList<Homerseklet2> temp2 = new ArrayList<Homerseklet2>();
  23.         int counter = 0;
  24.         while ((sor = Read.readLine()) != null) {
  25.             dbs = sor.split(" ");
  26.             temp2.add(new Homerseklet2(Double.parseDouble(dbs[0]),
  27.                     Homerseklet2.mertekegyseg.valueOf(dbs[1].toUpperCase())));
  28.             counter++;
  29.         }
  30.         Read.close();
  31.         for (Homerseklet2 tmp2 : temp2) {
  32.             System.out.println(tmp2);
  33.         }
  34.  
  35.         for (Homerseklet2 homerseklet2 : temp2) {
  36.             if (homerseklet2.getEgyseg() == mertekegyseg.CELSIUS) {
  37.                 double com = Homerseklet2.konvHomerseklet(homerseklet2.getTemperature(), homerseklet2.getEgyseg());
  38.                 homerseklet2.setTemperature(com);
  39.                 homerseklet2.setEgyseg(mertekegyseg.KELVIN);
  40.             }
  41.  
  42.         }
  43.  
  44.         temp2.sort(Comparator.comparing(k -> k.getTemperature()));
  45.  
  46.         Files.delete(Paths.get("out.txt"));
  47.  
  48.         for (Homerseklet2 homerseklet22 : temp2) {
  49.             String o = homerseklet22.toString() + '\n';
  50.             Files.write(Paths.get("out.txt"), o.getBytes(), StandardOpenOption.APPEND, StandardOpenOption.CREATE);
  51.         }
  52.         //Collection.binarySearch(temp2, new Homerseklet2(300),Comparator.comparing(k -> k.getTemperature()));
  53.     }
  54.  
  55. }
  56. //CLASS
  57. package homero2;
  58.  
  59. public class Homerseklet2 {
  60.     private double temperature;
  61.  
  62.     public enum mertekegyseg {
  63.         CELSIUS, KELVIN
  64.     };
  65.  
  66.     private mertekegyseg egyseg;
  67.  
  68.     public Homerseklet2(double temperature, mertekegyseg mert) {
  69.         this.temperature = temperature;
  70.         this.egyseg = mert;
  71.     }
  72.  
  73.     public Homerseklet2(double temperature) {
  74.         this.temperature = temperature;
  75.         this.egyseg = mertekegyseg.CELSIUS;
  76.     }
  77.  
  78.     @Override
  79.     public String toString() {
  80.         return "Homrseklet [temperature=" + temperature + ", egyseg=" + egyseg + "]";
  81.     }
  82.  
  83.     public double getTemperature() {
  84.         return temperature;
  85.     }
  86.  
  87.     public mertekegyseg getEgyseg() {
  88.         return egyseg;
  89.     }
  90.  
  91.     public void setEgyseg(mertekegyseg egyseg) {
  92.         this.egyseg = egyseg;
  93.     }
  94.  
  95.     public void setTemperature(double temperature) {
  96.         this.temperature = temperature;
  97.     }
  98.  
  99.     public static double konvHomerseklet(double temperature, mertekegyseg mert) {
  100.         double ertek = 0;
  101.         if (mert == mert.CELSIUS) {
  102.             ertek = temperature + 273.15;
  103.         } else if (mert == mert.KELVIN) {
  104.             ertek = temperature - 273.15;
  105.         }
  106.         return ertek;
  107.     }
  108. }
Add Comment
Please, Sign In to add comment