startsWithStringクラスのメソッドです。生の LinkedList タイプを使用しているため、 のように扱われLinkedList<Object>ます。文字列を使用する場合は、LinkedList<String>.
startsWithString引数ではなく、引数のみを受け入れ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)