回答編集履歴
2
修正
test
CHANGED
@@ -65,7 +65,7 @@
|
|
65
65
|
|
66
66
|
equals() を override するなら hashCode() も override してください。
|
67
67
|
|
68
|
-
toString() の結果を UI に使うのは止めたほうが良いです。(toString はデバッグ用です。)
|
68
|
+
toString() の結果を UI に使うのは止めたほうが良いです。(toString は基本的にはデバッグ用です。)
|
69
69
|
|
70
70
|
メニューや ISBN の処理等にバグがあります。
|
71
71
|
|
1
追加修正
test
CHANGED
@@ -67,4 +67,21 @@
|
|
67
67
|
|
68
68
|
toString() の結果を UI に使うのは止めたほうが良いです。(toString はデバッグ用です。)
|
69
69
|
|
70
|
-
|
70
|
+
メニューや ISBN の処理等にバグがあります。
|
71
|
+
|
72
|
+
以下は Pattern を使う意味がありません。
|
73
|
+
```java
|
74
|
+
public List<Book> searchBookByTitle(String title){
|
75
|
+
Pattern p = Pattern.compile(".*" + Pattern.quote(title) + ".*");
|
76
|
+
List<Book> resultList = new ArrayList<>();
|
77
|
+
for(Book book : bookList){
|
78
|
+
Matcher m = p.matcher(book.title);
|
79
|
+
if(m.find()) resultList.add(book);
|
80
|
+
}
|
81
|
+
return resultList;
|
82
|
+
}
|
83
|
+
```
|
84
|
+
String#contains やついでに Stream を使うと以下で済みます。
|
85
|
+
```java
|
86
|
+
return bookList.stream().filter(book -> book.title.contains(title)).toList();
|
87
|
+
```
|