Как добавить объект в ArrayList в Java
Я хочу добавить объект к ArrayList
, но каждый раз, когда я добавляю новый объект в ArrayList
с 3 атрибутами: objt(name, address, contact)
, я получаю сообщение об ошибке.
import java.util.ArrayList;
import java.util.Scanner;
public class mainClass {
public static void main(String args[]){
Scanner input = new Scanner(System.in);
System.out.println("Plz enter Name : ");
String name = input.nextLine();
System.out.println("Plz enter Address : ");
String address = input.nextLine();
System.out.println("Plz enter ContactNo : ");
String contact = input.nextLine();
ArrayList<Data> Contacts = new ArrayList<Data>();
Data objt = new Data();
Contacts.add(objt.Data(name, address, contact));
}
}
Здесь Data
- это класс, из которого я пытаюсь создать объект и передать его в ArrayList
.
public class Data {
private String name = "";
private String address = "";
private String cell = "";
public void Data(String n, String a, String c){
name = n;
address = a;
cell = c;
}
public void printData(){
System.out.println("Name\tAddress\tContactNo");
System.out.println(name + "\t" + address + "\t" + cell);
}
}
Ответы
Ответ 1
Вам нужно использовать оператор new
при создании объекта
Contacts.add(new Data(name, address, contact)); // Creating a new object and adding it to list - single step
или еще
Data objt = new Data(name, address, contact); // Creating a new object
Contacts.add(objt); // Adding it to the list
и ваш конструктор не должен содержать void
. Иначе он станет методом в вашем классе.
public Data(String n, String a, String c) { // Constructor has the same name as the class and no return type as such
Ответ 2
Попробуйте следующее:
Data objt = new Data(name, address, contact);
Contacts.add(objt);
Ответ 3
Contacts.add(objt.Data(имя, адрес, контакт));
Это не идеальный способ вызова конструктора. Конструктор автоматически вызывается во время создания объекта. если нет конструктора java class Создает свой собственный конструктор.
Правильный способ:
Объект данных1 = новый Данные (имя, адрес, контакт);
//Создание объекта.
Contacts.add(object1);
//добавление объекта Data в объект ArrayList Contacts.
Ответ 4
Здесь вы должны использовать новый оператор для создания экземпляра. Например:
Contacts.add(new Data(name, address, contact));
Ответ 5
изменить дату на объект, который находится между скобками