文字列があるとします
String s = bob
およびArrayList
["alex [available]", "bob [away]", "craig [busy]", "david [gone fishing]"]
リストを検索して [1] の要素を取得するにはどうすればよいですか?
文字列があるとします
String s = bob
およびArrayList
["alex [available]", "bob [away]", "craig [busy]", "david [gone fishing]"]
リストを検索して [1] の要素を取得するにはどうすればよいですか?
String strToSearch = yourString + " [";//"bob ["
for (int i = 0; i < list.size(); i++){
if (list.get(i).startsWith(strToSearch)){
neededIndex = i;
break;
}
}
リストを反復し、String.contains("bob")
すべてのアイテムに対して a を実行する必要があります。
for (String item : listOfItems) {
if (item.contains("bob") {
return item;
}
}
bob [
「ボブ」は別の名前に含まれている可能性があるため、検索用語を拡張する必要があるかもしれません。
おそらく、リストの代わりにマップを使用する必要があります。この場合、ループを使用する必要があります。
List<String> nameStatusList = ...
String s = "bob";
FOUND: {
for(String ns: nameStatusList)
if(ns.startsWith(s + " [")) {
System.out.println(ns);
break FOUND;
}
System.out.println("Couldn't find " + s);
}
このようなもの:
String string = "bob";
private List <String> list = new ArrayList<String>(){{
add("alex [available]");
add("bob [away]");
add("craig [busy]");
add("david [gone fishing]");
}};
public void method(){
String answer;
for (String s : list){
if (s.contains(string)){
answer = s;
break;
}
}
}
for (String str: list) {
if (str.contains(s)) {
return str;
}
}
str.contains(s)
念のため交換str.matches("^"+s+" [")
。