Why is there an error "no suitable constructor found" for my String[]?

java

Solution

You have following constructors for `Payroll`

    public Payroll(String name, double weeksPay) {/* some code */}

and

    public Payroll() {/* some */}

and you are passing `String[]` as first argument

Problem

The error is that there is no "suitable constructor found" for TestPayroll with this statement: `Payroll payroll = new Payroll(name, weeksPay); ` What should the constructor be? I assume it should be in the Payroll class. I want to display the pay for the week for Tiny Tim, Brad Pitt, and Madonna. ``` import javax.swing.JOptionPane; public class TestPayroll { private String [] name = {"Tiny Tim", "Brad Pitt", "Madonna"}; private double [] payRate = {100.25, 150.50, 124.25}; private double [] hrsWorked = {40, 35, 36}; private double weeksPay; //Payroll object Payroll payroll = new Payroll(name, weeksPay); public static void main(String[] args) { //Display weekly pay JOptionPane.showMessageDialog(null, "%s's pay for the week is: $%.2f\n", payroll[0].getName(), payroll[0].getWeeksPay()); } } public class Payroll { public static void main(String[] args) { } private String name; private double payRate; private double hrsWorked; private double weeksPay; //default constructor public Payroll() { this.name = name; this.payRate = payRate; this.hrsWorked = hrsWorked; this.weeksPay = weeksPay; } //Payroll constructor public Payroll(String name, double weeksPay) { this.name = name; this.weeksPay = weeksPay; } //return name public String getName() { return name; } //set name public void setName(String name) { this.name = name; } //return pay rate public double getPayRate() { return payRate; } //set pay rate public void setPayRate(double payRate) { this.payRate = payRate; } //return hours worked for the week public double getHrsWorked() { return hrsWorked; } //set hours worked for the week public void setHrsWorked(double hrsWorked) { this.hrsWorked = hrsWorked; } //find week's pay public double getWeeksPay(double weeksPay) { double weeksPay = payRate * hrsWorked; return weeksPay; } } ```

Original source