Java 如何将变量传递到一个新的android活动中,并能够在整个课堂中使用它们?

Java 如何将变量传递到一个新的android活动中,并能够在整个课堂中使用它们?,java,android,variables,android-intent,android-studio,Java,Android,Variables,Android Intent,Android Studio,我试图将一个变量传递到活动中,但得到了一个空对象引用 我的意图声明使用putExtra() 我的活动课(测试)要求额外的 public class test extends Activity { Intent launch_test = getIntent(); Bundle extras = launch_test.getExtras(); int NUM_ROWS = launch_test.getIntExtra("NUM_ROWS", 0); int NUM_COLS = launch

我试图将一个变量传递到活动中,但得到了一个空对象引用

我的意图声明使用putExtra()

我的活动课(测试)要求额外的

public class test extends Activity {
Intent launch_test = getIntent();
Bundle extras = launch_test.getExtras();

int NUM_ROWS = launch_test.getIntExtra("NUM_ROWS", 0);
int NUM_COLS = launch_test.getIntExtra("NUM_COLS", 0);

Button buttons[][] = new Button[NUM_ROWS][NUM_COLS];

etc...
但是当我尝试在模拟器中运行它时,我得到了一个空对象引用

我假设我可以使用IF语句来检查空值,但androidstudio不允许我在代码的这一部分使用IF语句。如果我将If语句放入OnCreate函数中,那么我将无法按照我希望的方式在整个类中使用变量


我对android编码非常陌生,所以如果有混淆,我很抱歉

如果你只想使用你的代码, 请改正一下
使用:extras.getIntExtra代替launch_test.getIntExtra

Try
int i=launch_test.getExtras().getInt()是否在
onCreate
中??。如果不是,您应该。您正在将
launch\u test
设置为
test
类变量吗?您能将所有这些都放到onCreate方法中,然后再次尝试运行它吗?这可能会导致NullPointerE。您可以使用SharedReferences
public class test extends Activity {
Intent launch_test = getIntent();
Bundle extras = launch_test.getExtras();

int NUM_ROWS = launch_test.getIntExtra("NUM_ROWS", 0);
int NUM_COLS = launch_test.getIntExtra("NUM_COLS", 0);

Button buttons[][] = new Button[NUM_ROWS][NUM_COLS];

etc...