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.