Java 在android studio调试器中,枚举的计算结果为null

Java 在android studio调试器中,枚举的计算结果为null,java,android,android-studio,debugging,enums,Java,Android,Android Studio,Debugging,Enums,我在Android项目中遇到了一个关于枚举的奇怪问题。我做了很多搜索,没有找到任何与我所看到的相似的东西。问题是:我创建了一个新的android项目,发现我的应用程序在一个枚举上崩溃了。在调查中,似乎我在调试器中使用的每一个枚举的计算结果都为null。我做了一个简单的例子来说明我所看到的: public class foo { public enum fdsa { one, two, three } public foo()

我在Android项目中遇到了一个关于枚举的奇怪问题。我做了很多搜索,没有找到任何与我所看到的相似的东西。问题是:我创建了一个新的android项目,发现我的应用程序在一个枚举上崩溃了。在调查中,似乎我在调试器中使用的每一个枚举的计算结果都为null。我做了一个简单的例子来说明我所看到的:

public class foo
{
    public enum fdsa {
        one,
        two,
        three
    }

   public foo() {
        fdsa state;
        state = fdsa.two;

        switch (state) {
            case one:
                Toast.makeText(mAsdfView.getContext(), "one called", Toast.LENGTH_SHORT).show();
                break;

            case two:
                Toast.makeText(mAsdfView.getContext(), "two called", Toast.LENGTH_SHORT).show();

                break;

        }

当我在案例2中放置断点并将光标悬停在枚举上时,它显示为null。它对我在项目中使用的每个枚举都这样做


我不知道如何继续下去。Enum在我用作此项目基础的项目中工作得很好。我在想这可能是一个出发点还是什么?我有调试器可供使用,但我不知道如何使用它。希望有人对如何继续有任何建议或提示?

您将鼠标悬停在case语句上,而不是enum变量本身(即
状态
)。它不是一个变量,所以我不知道为什么调试器在这里显示任何东西-它看起来像一个bug-但是如果您检查
状态
,而不是将鼠标悬停在case语句上,而不是枚举变量本身(即
状态
),它应该显示正确的值。它不是一个变量,所以我不知道为什么调试器会在这里显示任何东西-它看起来像一个bug-但是如果您检查
状态而不是
two
,它应该显示正确的值。非常感谢您向我指出这一点。我的应用程序崩溃了,当我进入调试器时,它显示enum为null,这让我觉得这就是问题所在。在你的评论之后,我从另一个角度看了看,并找出了问题所在。非常感谢你向我指出这一点。我的应用程序崩溃了,当我进入调试器时,它显示enum为null,这让我觉得这就是问题所在。在你的评论之后,我从另一个角度看了看,并找出了问题所在。