I am trying to read in parameters of a triangle then display them in JOptionPane. All of the parameters are working except the boolean value filled and the color. i want to try and solve the boolean issue first. My test program is as follows and under that are the two class files i created. i am getting the following error:
TestTriangle.java:31: error: incompatible types filled = true; ^ required: int found: boolean
//java 2 //15-2 //by taddei // test new triangle class import javax.swing.JOptionPane; public class TestTriangle { public static void main(String[] args) { JOptionPane.showMessageDialog(null,"You will be asked to enter triangle parameters.\n" + "Then the program will display triagle details"); ////get triangle parameters//// String side1String = JOptionPane.showInputDialog(null,"Enter side A length: "); double side1 = Double.parseDouble(side1String); String side2String = JOptionPane.showInputDialog(null,"Enter side B length: "); double side2 = Double.parseDouble(side2String); String side3String = JOptionPane.showInputDialog(null,"Enter side C length: "); double side3 = Double.parseDouble(side3String); ///does not read color String colorString = JOptionPane.showInputDialog(null,"Enter color: "); String color = colorString; int filled = JOptionPane.showConfirmDialog(null, "Is the triangle filled? ", "Please select", JOptionPane.YES_NO_OPTION); if(filled==1) filled = true; else if(filled==0) filled = false; TriangleNew triangle = new TriangleNew(side1, side2, side3); triangle.setColor("yellow"); //triangle.setFilled(true); JOptionPane.showMessageDialog(null, "The area is: " + triangle.getArea()+ "\nThe perimeter is: " + triangle.getPerimeter() + "\nThe color is: " + triangle.getColor() + "\nTriangle is filled: " + triangle.isFilled()); } }
//java 2 //15-2 //by taddei //new triangle sub class extends geo obj import java.util.ArrayList; import java.util.Date; import javax.swing.JOptionPane; class TriangleNew extends GeometricObject { private double side1 = 1.0, side2 = 1.0, side3 = 1.0; /** Constructor */ public TriangleNew() { } /** Constructor */ public TriangleNew(double side1, double side2, double side3) { this.side1 = side1; this.side2 = side2; this.side3 = side3; } /** Implement the abstract method findArea in GeometricObject */ public double getArea() { double s = (side1 + side2 + side3) / 2; return Math.sqrt(s * (s - side1) * (s - side2) * (s - side3)); } /** Implement the abstract method findCircumference in * GeometricObject **/ public double getPerimeter() { return side1 + side2 + side3; } @Override public String toString() { // Implement it to return the three sides return "TriangleNew: side1 = " + side1 + " side2 = " + side2 + " side3 = " + side3; } }
//java 2 //15-2 //by taddei //geometric object abstract class public abstract class GeometricObject { private String color = "white"; private boolean filled; private java.util.Date dateCreated; //construct default object protected GeometricObject() { dateCreated = new java.util.Date(); } ///construct geo ob w/ color and fill val protected GeometricObject(String color, boolean filled){ dateCreated = new java.util.Date(); this.color = color; this.filled = filled; } //return col public String getColor(){ return color; } //set new col public void setColor(String color){ this.color = color; } //return filled public boolean isFilled(){ return filled; } //set new fill public void setFilled(boolean filled){ } //get date public java.util.Date getDateCreated(){ return dateCreated; } //return string rep public String toString(){ return "created on " + dateCreated + "\ncolor: " + color + " and filled: " + filled; } ///abs meth get area public abstract double getArea(); ///abs get perim public abstract double getPerimeter(); }