这可能是一个愚蠢的问题,但是您如何使用字符串数组?
我正在尝试做这样的事情,但我的应用程序会在启动时崩溃。
String names [] = null ;
names[0]= "I am";
names[1]= "Ammar";
Toast.makeText(getApplicationContext(), names[1] , Toast.LENGTH_SHORT).show();
这可能是一个愚蠢的问题,但是您如何使用字符串数组?
我正在尝试做这样的事情,但我的应用程序会在启动时崩溃。
String names [] = null ;
names[0]= "I am";
names[1]= "Ammar";
Toast.makeText(getApplicationContext(), names[1] , Toast.LENGTH_SHORT).show();
您必须创建数组,就像任何其他数组一样
String names[] = new String[size];
数组遵循内存静态分配的概念,因此您必须在使用它之前定义需要多少内存或大小。
String[] names = new String[10];
你应该定义数组大小。
String name[] = new String[2];
您可以使用 :
String[] names = new String[2];
names[0] = "I am";
names[1]= "Ammar";
Toast.makeText(getApplicationContext(), names[1] , Toast.LENGTH_SHORT).show();
可能是因为您没有为字符串数组分配内存而出错。您已将 null 分配给数组,这就是应用程序崩溃的原因。
String[] names = { "I am", "Ammar" };
这是对象实例化的标准问题。如果你要定义一个引用,你必须要么将它指向一个已经存在的对象,要么使用new
关键字创建一个对该对象的新引用。
前任:
[Class] x = new [Class]()
[Class]
您要实例化/使用的对象在哪里。
每当创建对象引用但未实例化时,该对象将被初始化为 null。
前任:
[Class] x;
在这一行之后, x 将为空,因为它没有有效的对象引用(无论是否新)。
尝试更换
String names [] = null ;
和
String names[] = new String[2];