java 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的四位数?都是多少?

publicstaticvoidmain(String[]args){//有1、2、3、4个数字,能组成多少个互不相同且无重复数字的四位数?都是多少?int[]num=n... public static void main(String[] args) {
//有1、2、3、4个数字,能组成多少个互不相同且无重复数字的四位数?都是多少?
int[] num = new int[] {1, 2, 3, 4};
int[] kind = new int[50];
int count = 0;
for(int i = 0; i < num.length; i++) {
for(int j = 0; j < num.length; j++) {
for(int k = 0; k < num.length; k++) {
if(i == j || i == k || j == k) {
continue;
}
// System.out.println(num[i]*1000 + num[j]*100 + num[k]*10 + num[6-i-j-k]);
kind[count] = num[i]*1000 + num[j]*100 + num[k]*10 + num[6-i-j-k];
count++;
}
}
}
System.out.println();
count = 0;
while(count < 50 && num[count] != 0) {
System.out.println(kind[count]);
count++;
}

}

这个。。。为什么会出错,而且还是数组越界的错误呢。。。我这里明明写了count < 50来防止超过数组元素的个数的啊~
还有问一下,错误提示中的Exception in thread "main" 1243是什么意思啊~
为什么它有时会在第一行,有时又在其他行的呢~
展开
 我来答
无可奈何SOS
2013-09-01 · TA获得超过139个赞
知道小有建树答主
回答量:163
采纳率:0%
帮助的人:111万
展开全部
while (count < 50 && num[count] != 0)
这一句出错了,num这个数组只有4长度啊。估计你写错了吧,是num数组越界了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式