Java 查找与数组中的字符串对应的整数

Java 查找与数组中的字符串对应的整数,java,arrays,arraylist,organization,Java,Arrays,Arraylist,Organization,我有一个字符串数组,如下所示: public ModeValue mode = new ModeValue("test_mode", "dog", new String[] { "cat", "dog", "rabbit", "horse", "bear", "fish", "bird", "snake" }, this); 我想知道如何将每个字符串视为整数。例如:cat=1,dog=2,rabbit=3,等等,然后我想使用这个整数访问每个字符串。这将在字符串列表中使用,单击该

我有一个字符串数组,如下所示:

public ModeValue mode = new ModeValue("test_mode", "dog", new String[] {
        "cat", "dog", "rabbit", "horse", "bear", "fish", "bird", "snake"
}, this);

我想知道如何将每个字符串视为整数。例如:cat=1,dog=2,rabbit=3,等等,然后我想使用这个整数访问每个字符串。这将在字符串列表中使用,单击该列表可切换模式。

字符串数组已允许您使用字符串映射整数。要获取与整数关联的字符串,只需在数组中查看整数所指示的索引(例如,
MyArray[myInteger]
)。要获取与字符串关联的整数,请搜索数组并找到所需字符串出现的索引。请注意不要让字符串在数组中出现多次,因为这样会阻止int和字符串之间的1..1关联

您不必为此使用数组-其他可索引数据结构(如列表和哈希表)也可以使用


这种数据结构称为查找表,并不少见。

假设字符串数组是This,并且您正在用它初始化一个
ModeValue
对象:

new String[] {
    "cat", "dog", "rabbit", "horse", "bear", "fish", "bird", "snake"
}
现在,它是匿名宣布的。您必须先用名称声明它,才能使用其名称和索引访问它

例:

如果没有关于
ModeValue
的更多详细信息,我不确定如何帮助切换或如何访问
mode
对象中的数组。您可以在
ModeValue
中实现
get
方法来返回数组,这将允许您正常访问它

如何在ModeValue类中声明get方法的示例

public class ModeValue
{
    private String[] animals;
    public getAnimals()
    {
         return animals;
    }
}
在你的主要方法中,让动物像这样:

String[] mainAnimals = mode.getAnimals();

哪个数组是这样的?我不确定我是否正确理解了你的问题,但是你不能简单地使用数组的索引吗?如果出于某种原因这不是您的选项,则只需将数组转换为哈希映射。请阅读:。如果这无助于编辑您的问题ald,请澄清您的问题。我想以某种方式将当前字符串模式转换为整数,如下所示:(integer)this.mode.getValue(),但这会产生转换错误。还有什么建议吗?哦。您试图在数组中搜索“dog”并返回“dog”的索引?
String[] mainAnimals = mode.getAnimals();