我有一个代码。此代码使用空格或引号拆分多段文本。我想把分裂部分放入一个数组中。但是当我使用这种方式时,我得到NullPointException
错误。你怎么看待这个?
arrays = null;
//arrays [k] = str.substring(j , (i)).trim() ;
//System.out.println(arrays [k]);
**阵列和扫描定义在主要上方。 当我尝试ArrayList时,我得到输出,但它是多个。 例如: A B C D A B C D 。 。 多行相同的东西。
答案 0 :(得分:1)
您声明了arrays = null;
,因此当您尝试访问arrays
时,您实际上正在访问null
,因此您会收到NullPointerException。您希望将arrays
声明为String[] arrays = new String[x]
,其中x
是数组的大小。如果您事先不知道尺寸,则需要使用ArrayList
。您通过说List<String> list = new ArrayList<String>()
(来自Java 5的泛型)声明了这一点。您可以通过说list.add(item);
答案 1 :(得分:0)
我只能通过快速查看看到你已声明String[] arrays = null;
但未初始化它然后使用它arrays [k]
,这是一个空指针。你必须初始化它。像String[] arrays = new String[6];
这样的东西。您可能希望动态添加长度。
答案 2 :(得分:0)
尝试使用&#34; try catch&#34;
比较使用&#34; compareTo&#34;方法
char c1 = 'x';
char c2 = 'y';
c1.compareTo(c2)
并且不要将数组初始化为null