Scanner sc=new Scanner(System.in);
System.out.println("Enter the number.");
int n=sc.nextInt();
PIDManager[] ob;
for (int j=0;j<n;j++)
{
ob[j]=new PIDManager("Thread Number "+(j+1));
}
此处PIDManager
是一个类,编译器显示可能未定义ob
的错误。
答案 0 :(得分:3)
如果您事先不知道大小,请使用像ArrayList这样的可扩展数组:
List<PIDManager> ob = new ArrayList<>();
..
ob.add(new PIDManager("Thread Number "+(j+1)));
然后使用add方法将元素添加到它。如果您知道大小,那么您可以定义数组:
PIDManager[] ob = new PIDManager[n];
答案 1 :(得分:1)
初始化时,必须在Java中指定数组的大小(数组在Java中不增长)。请改用ArrayList
或LinkedList
等集合。
此外,您还没有初始化阵列。
PIDManager[] ob;
应该是(假设你当时知道大小)。
PIDManager[] ob = new PIDManager[size];
但是片段中的逻辑似乎有些问题。由于您似乎确实需要一个从n
for (int j=0;j<n;j++)
的数组