From 51f697afaf9705cc2227c129a37fc3f66f9bafbe Mon Sep 17 00:00:00 2001 From: Orange Date: Wed, 9 Nov 2016 18:30:39 +0100 Subject: [PATCH] rewrite print, add toString --- src/FigureGeometriche/Cerchio.java | 6 +++++- src/FigureGeometriche/FiguraRegolare.java | 6 +++++- src/FigureGeometriche/Manager.java | 10 +++++++++- src/FigureGeometriche/Rettangolo.java | 9 +++++++-- src/FigureGeometriche/Test.java | 5 +++-- 5 files changed, 29 insertions(+), 7 deletions(-) diff --git a/src/FigureGeometriche/Cerchio.java b/src/FigureGeometriche/Cerchio.java index fc7b88a..ac95a7b 100644 --- a/src/FigureGeometriche/Cerchio.java +++ b/src/FigureGeometriche/Cerchio.java @@ -21,8 +21,12 @@ public class Cerchio implements FiguraGeometrica{ return raggio*raggio*3.14; } + public String toString(){ + return "Cerchio di raggio: "+raggio; + } + public void print(PrintStream ps){ - ps.println("Cerchio di raggio: "+raggio); + ps.println(raggio); } private double raggio; diff --git a/src/FigureGeometriche/FiguraRegolare.java b/src/FigureGeometriche/FiguraRegolare.java index 5e08923..e728f00 100644 --- a/src/FigureGeometriche/FiguraRegolare.java +++ b/src/FigureGeometriche/FiguraRegolare.java @@ -31,8 +31,12 @@ public class FiguraRegolare implements FiguraGeometrica{ return (calcolaPerimetro()*apotema)/2; } + public String toString(){ + return "Figura regolare di "+nlati+" lati lunghi "+lato; + } + public void print(PrintStream ps){ - ps.println("Figura regolare di "+nlati+" lunghi "+lato); + ps.println(lato+" "+apotema/lato+" "+nlati); } private double lato; diff --git a/src/FigureGeometriche/Manager.java b/src/FigureGeometriche/Manager.java index 6e53fc0..f3c8b92 100644 --- a/src/FigureGeometriche/Manager.java +++ b/src/FigureGeometriche/Manager.java @@ -56,8 +56,16 @@ public class Manager{ } public void print(PrintStream ps){ - for(FiguraGeometrica fg: figure) + for(FiguraGeometrica fg: figure){ + if(fg instanceof FiguraRegolare) + ps.print("Regolare "); + else if(fg instanceof Rettangolo) + ps.print("Rettangolo "); + else + ps.print("Cerchio "); fg.print(ps); + + } } private ArrayList figure; diff --git a/src/FigureGeometriche/Rettangolo.java b/src/FigureGeometriche/Rettangolo.java index 028e0c9..0b796bc 100644 --- a/src/FigureGeometriche/Rettangolo.java +++ b/src/FigureGeometriche/Rettangolo.java @@ -27,10 +27,15 @@ public class Rettangolo implements FiguraGeometrica{ return base*altezza; } - public void print(PrintStream ps){ - ps.println("Rettangolo "+base+"x"+altezza); + public String toString(){ + return "Rettangolo "+base+"x"+altezza; } + public void print(PrintStream ps){ + ps.println(base+" "+altezza); + } + + private double base; private double altezza; } \ No newline at end of file diff --git a/src/FigureGeometriche/Test.java b/src/FigureGeometriche/Test.java index 4e4267b..ec237a8 100644 --- a/src/FigureGeometriche/Test.java +++ b/src/FigureGeometriche/Test.java @@ -9,8 +9,9 @@ public class Test { PrintStream ps = System.out; ps.println("Figura con area maggiore"); - manager.getMax("area").print(ps); + ps.println(manager.getMax("area").toString()); + ps.println("Figura con perimetro minore"); - manager.getMin("perimetro").print(ps); + ps.println(manager.getMin("perimetro").toString()); } }