我在main函数所在的类中定义了一个公共静态变量“public static LinkedList<ServerThread>[] chatRoom”,然后在main函数中对它赋值“chatRoom[1] = new LinkedList<ServerThread>();chatRoom[2] = new LinkedList<ServerThread>();chatRoom[3] = new LinkedList<ServerThread>();”,一共三个。编译成功,运行时系统报错说赋值时有NullPointerException。为什么?谢谢大家!
当你使用chatRoom[0],chatRoom[1],chatRoom[2],chatRoom[3]的时候,肯定会报错,因为数组中的元素都是没有实例化的,改成下面的写法
,应该就没问题了,lz试试看public static LinkedList <ServerThread>[] chatRoom = new LinkedList <ServerThread>[4];
chatRoom[0] = new LinkedList <ServerThread>();
chatRoom[1] = new LinkedList <ServerThread>();
chatRoom[2] = new LinkedList <ServerThread>();
chatRoom[3] = new LinkedList <ServerThread>();