0

AddContact.java

package phonebook;
import java.util.TreeSet;
import java.util.Comparator;
import java.lang.Comparable;
//import java.util.Collections;
import javax.swing.JFrame;
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextField;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JOptionPane;
import java.util.ArrayList;
import java.util.Collections;
import javax.swing.DefaultListModel;
public class AddContact extends JFrame implements ActionListener
{
    TreeSet<Contact> contactList;
    JLabel name;
    JLabel cno;
    JTextField tcno;
    JTextField tname;
    JButton b1;
    JButton b2;

    class ContactSort implements Comparator<Contact>      
    {
        public int compare(Contact c1,Contact c2) 
        {    
            return c1.getNo().compareTo(c2.getNo());
        }    
    }
    class NameSort implements Comparator<Contact>
    {
        public int compare(Contact c1,Contact c2)
        {
            return c1.getName().compareTo(c2.getName());
        }
    }
    public void AddComponentContact() 
    {
        contactList=new TreeSet<Contact>(new ContactSort());
        name=new JLabel("Enter Name:");
        tname=new JTextField(10);
        cno=new JLabel("Enter Contact No.");
        tcno=new JTextField(15);
        b1=new JButton("ADD");
        b1.addActionListener(this);

        setLayout(new FlowLayout());
        setTitle("Add Contact");
        setSize(300,300);
        setVisible(true);
        add(name);
        add(tname);
        add(cno);
        add(tcno);
        add(b1);     
    }

    public void addContactView()
    {
    }



public void actionPerformed(ActionEvent ae)
{
    String name=tname.getText();
    String cno=tcno.getText();

    if(name.equals("") || (cno.equals("")))
    {
        JOptionPane.showMessageDialog(this,"Please fill the details properly","Warning Message",JOptionPane.WARNING_MESSAGE);

    }
    else
    {
        Contact c=new Contact();
        c.setName(name);
        c.setNo(cno);

        contactList.add(c);

        ArrayList<Contact>tempList=new ArrayList<Contact>(contactList);
        Collections.sort(tempList,new NameSort());

        DefaultListModel<Contact> dlm_contact=new DefaultListModel();

        dlm_contact.removeAllElements();

       for(Contact c1:tempList)

       {
           dlm_contact.addElement(c1);
       }
       tname.setText("");
       tcno.setText("");

       JOptionPane.showMessageDialog(this,"Contact has been added","Success Message",JOptionPane.INFORMATION_MESSAGE);
       int status=JOptionPane.showConfirmDialog(this, "Do you want to add more contacts?","Confirmation",JOptionPane.YES_NO_OPTION,JOptionPane.WARNING_MESSAGE);

       if(status == 0)
       {
           this.setVisible(true);
       }
       else
       {
           this.dispose();
       }
    }
}

//contactList=new TreeSet<Contact>(ContactSort());
}

contact.java

package phonebook;

public class Contact<X,Y> 
{
    public X name;
    public Y contact;

    public void setName(X name)
   {
        this.name=name;
    }

    public void setNo(Y contact)
    {
        this.contact=contact;
    }

   public X getName()
   {
       return name;
   }

   public Y getNo()
   {
       return contact;
   }

}

Menu.java

package phonebook;
import java.awt.FlowLayout;
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class Menu extends JFrame implements  ActionListener
{
    JButton b1;
    JButton b2;


    public void addComponenets()
    {
        b1=new JButton("Add Contact");
        b2=new JButton("View Contact");

        b1.addActionListener(this);
    b2.addActionListener(this);

    setLayout(new FlowLayout());
    setTitle("Phone Book Menu");
    setSize(300,300);
    setVisible(true);
    add(b1);
    add(b2);
}

public void actionPerformed(ActionEvent ae)
{
    if(ae.getSource() == b1)
    {
        AddContact ac = new AddContact();
        ac.AddComponentContact();
    }
    else if(ae.getSource() == b2)
    {
        AddContact ac = new AddContact();
        ac.addContactView();

    }
}

public static void main(String args[])
{
    Menu m1=new Menu();
    m1.addComponenets();
}
}

it is a add contact and name App , my compareTo() method showing error while in other desktop it is working fine ... error is:::

error: cannot find symbol return c1.getNo().compareTo(c2.getNo()); symbol: method compareTo(Object) location: class Object C:\Users\Admin\Documents\NetBeansProjects\PhoneBookApplication\src\phonebook\AddContact.java:53: error: cannot find symbol return c1.getName().compareTo(c2.getName()); symbol: method compareTo(Object) location: class Object Note: C:\Users\Admin\Documents\NetBeansProjects\PhoneBookApplication\src\phonebook\AddContact.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details.

Yitian Zhang
  • 314
  • 1
  • 3
  • 18
Drashti
  • 111
  • 2
  • 12

0 Answers0