Привет, ребята, кто-нибудь может сказать мне, где я ошибаюсь?arraylist: сравнение объекта со строкой
Основная цель этого класса - определить любимый архаист предметов, который в данном случае касается автомобилей. Объекты автомобилей имеют название автомобиля и рейтинг автомобиля 1-5.
как вы видите, если строка равна рейтингу объектов автомобиля. im messing часть, где вы сравниваете строку или int с объектом автомобиля в списке массивов. что не так с моим методом equals()? Может ли метод contains() работать одинаково?
Метод numberOfItemsOfRating позволяет пользователю указывать рейтинг и, следовательно, метод возвращает автомобили без рейтинга. метод searchForItems проверяет, соответствует ли описание String имя машины в списке массивов и, следовательно, возвращает автомобиль в arraylist.
здесь проблеск моих двух методов с конструкторами и переменными:
public class FavouriteItems
{
private ArrayList<Item> cars;
/**
* Constructor for objects of class FavouriteItems
*/
public FavouriteItems()
{
cars= new ArrayList<Item>();
}
/**
* Add a new Item to your collection
* @param newItem The Item object to be added to the collection.
*/
public void addToFavourites(Item newItem)
{
cars.add(newItem);
}
/**
* Count the number of Items with a given rating
* @return The number of Items (Item objects)
* whose rating is rating (could be 0).
* If the rating parameter is outside the valid
* range 1..5 then print an error message and return 0.
*/
public int numberOfItemsOfRating(int rating)
{
int counter = 0;
if(rating >= 1 && rating <=5)
{
for (int i =0; i < cars.size(); i++)
{
int num = rating;
String al = Integer.toString(rating);
if(cars.get(i).equals(al))
{
counter++;
}
}
}
else
{
System.out.println("No cars match your ratings");
counter = 0;
}
return counter;
}
/**
* Find the details of a Item given its description
* @return Item object if its description is in the collection
* or null if there is no item with that description
*/
public Item searchForItem(String description)
{
for(int i=0; i<cars.size(); i++)
{
if(cars.equals(description))
{
return cars.get(i);
}
else
{
return null;
}
}
}
}
метод equals() для автомобиля – mishadoff
Это то, что я пробовал делать, но он не работает – Danial
Вы сравниваете объект Item с Integer - это то, что вы намеревались? – tdrury