startsWith
String
クラスのメソッドです。生の LinkedList タイプを使用しているため、 のように扱われLinkedList<Object>
ます。文字列を使用する場合は、LinkedList<String>
.
startsWith
String
引数ではなく、引数のみを受け入れchar
ます。startsWith("\"")
代わりに使用してください。
- に指定した 2 番目のパラメーター
startsWith
は不要です。2 番目のパラメーターを指定しないと、開始位置が 0 と見なされます。
if
ステートメントの後に不要なセミコロンがあります。これにより、if
ボディが空として扱われます。このセミコロンは必ず削除し、必要に応じて中括弧を使用してください。
修正したソリューションは次のようになります。
LinkedList<String> list1 = new LinkedList<String>();
// [...] Populate the list accordingly here
for(int i=1; i < list1.count(); i++){
if (list1.get(i).startsWith("\"")) {
list1.remove(i);
}
}
その他の注意事項:
- for ループはインデックス 1 から始まります。これは最初の要素を削除しないことに注意してください。これがあなたの望む行動であるかどうかは確かです。
- リスト内の要素を削除すると、リスト内の後者の要素のインデックスが変更されます。
例えば:
[ "a", "b", "c", "d" ]
^
(remove element at index 0)
[ "b", "c", "d" ]
^
(remove element at index 1... uh oh, we missed "b"!)
[ "b", "d" ]
^
(remove element at index 2... ERROR; index out of bounds)