在 Android Studio 中,有时我们在调试过程中可能会遇到 Object evaluate 总是返回 null 的问题。这是因为调试过程中的变量可能被优化,导致我们无法获取一些对象的值。解决此问题的方法是使用 Evaluate Expression 功能来手动获取该对象的值。以下是一个代码示例:
public class MainActivity extends AppCompatActivity {
private List mList = new ArrayList<>();
// 添加数据到 mList
private void initData() {
mList.add("Android");
mList.add("Java");
mList.add("Kotlin");
}
// 调试方法
private void debug() {
// 添加数据到 mList
initData();
// 在此处添加断点
mList.get(0); // 这里是获取单个元素的表达式
// 在调试过程中,将光标放在 mList.get(0); 上,然后按下 Alt + F8
// 在弹出的对话框中输入表达式 mList.get(0); 并点击 Evaluate 按钮
// 将返回结果显示在 Evaluate 表达式的旁边。
}
}
在以上代码示例中,我们在 debug() 方法中添加了一个断点,并使用 Evaluate Expression 来手动获取 mList.get(0) 的值。这样就可以解决 Object evaluate 总是为空的问题。