文字列に対してリストをチェックし、それに対して何かを行うJavaプログラムを書いています。Fortranでは、次の行に沿って何かを書きます
where(list(:)==stringToCheck){
...
statements
...
}
代わりに、for ループのブロックの頭痛の種があります。いいえ、おそらくコードを少しきれいにすることはできますが、それでも fortran よりもはるかに非効率的です。
編集、これは私が頼ったコードです:
for(int idx=0;idx<player.get_charactersOwned().size();idx++)
{
if(player.get_charactersOwned().get(idx).get_characterName().equals(charName))
{
/* Add character to the game
* Add game to the character*/
System.out.println("Character "+charName+" Found ");
gameToMake.addCharacters(player.get_charactersOwned().get(idx));
player.get_charactersOwned().get(idx).addGame(gameToMake);
break;
}else
{
System.err.println("Character "+ charName +" not found");
System.out.println("Shall I add that Character? y/n ");
choice = scanner.nextLine();
if(choice.equalsIgnoreCase("y"))
{
charName = scanner.nextLine();
Character character = new Character(charName);
characterTempList.add(character);
player.addCharacter(characterTempList);
gameToMake.addCharacters(player.get_charactersOwned().get(idx));
player.get_charactersOwned().get(idx).addGame(gameToMake);
break;
}else{break;}
}
}
このコードを修正するのは魅力的ですが、回避策を使用したいと思います。
外部ライブラリを使用せずにこれに相当する Java はありますか?