Помогите разобраться, почему метод equals не работает.
package com.javarush.task.task18.task1828;
/*
Прайсы 2
*/
import java.io.*;
import java.util.ArrayList;
import java.util.List;
public class Solution {
// по умолчанию тоже не видит
@Override
public boolean equals(Object obj) {
return this==obj;
}
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String filename = reader.readLine();
List<P> list = new ArrayList<>();
BufferedReader read = new BufferedReader(new FileReader(filename));
//Докум. в лист фильтр по полям вспомогательного класса P
while (read.ready()){
String line = read.readLine();
String id = line.substring(0,8).replaceAll(" ","");
String productName = line.substring(8,38);
String price = line.substring(38,46);
String quantity = line.substring(46,50);
list.add(new P(id,productName,price,quantity));
}
read.close();
// проверка на запуск с параметром update
if (args[0].equals("-u")){
for (P p : list){
String sID = p.id;
if (sID.equals(args[1])){
System.out.println("test");
p.setProductName(getStr(args[2],30));
p.setPrice(getStr(args[3],8));
p.setQuantity(getStr(args[4],4));
return;
}
}
// проверка на запуск с параметром delete
} else if (args[0].equals("-d")){
for (int i = 0; i < list.size(); i++) {
if (list.get(i).id.equals(args[1])){
list.remove(i);
return;
}
}
}else {
System.out.println("Введенны неверные параметры для редактирования");
}
//запись отредактированного листа
BufferedWriter br = new BufferedWriter(new FileWriter(filename));
for (P p: list){
br.write(p.toString());
}
br.close();
reader.close();
}
public static String getStr(String s, int length){
if(s.length()<length) {
StringBuilder sb = new StringBuilder(s);
for (int i = 0; i < length-s.length(); i++) {
sb.append(" ");
}
return String.valueOf(sb);
}else {
return s;
}
}
static class P{
String id,productName,price,quantity;
public P(String id, String productName, String price, String quantity) {
this.id = id;
this.productName = productName;
this.price = price;
this.quantity = quantity;
}
public void setId(String id) {
this.id = id;
}
public void setProductName(String productName) {
this.productName = productName;
}
public void setPrice(String price) {
this.price = price;
}
public void setQuantity(String quantity) {
this.quantity = quantity;
}
@Override
public String toString() {
return getStr(id,8)+productName+price+quantity+"\n";
}
}
}