当前位置:编程学习 > JAVA >>

请教关于数组的一个小问题

	
public static void main (String args[]){
int a[] = {25,24,12,76,98,101,90,28} ;
for (int i = 0 ; i <= a.length ; i ++){
if (a[i] % 2 == 1) {
System.out.print(a[i]+"\t");
}
else {
System.out.println(a[i]+"\t");
}
}
}
java arrary --------------------编程问答-------------------- int i = 0 ; i <= a.length ; i ++){
这个等于号 ,改成 i<a.length;
会发生数组越界。
a[a.length]是不能访问的,最大为length-1; --------------------编程问答--------------------
引用 1 楼 fortheother 的回复:
int i = 0 ; i <= a.length ; i ++){
这个等于号 ,改成 i<a.length;
会发生数组越界。
a[a.length]是不能访问的,最大为length-1;

 * 对数组 a[] = {25,24,12,76,98,101,90,28}求出其中的奇数个数和偶数个数
如果要对一个数组求出奇数和偶数,我上面那样写为什么得不出结果呢? --------------------编程问答-------------------- 你的判断有问题,你可以设置一个变量如int isOdd如果条件成立isOdd+1 --------------------编程问答--------------------
引用 3 楼 qq467339640 的回复:
你的判断有问题,你可以设置一个变量如int isOdd如果条件成立isOdd+1

对数组 a[] = {25,24,12,76,98,101,90,28}求出其中的奇数个数和偶数个数

你能帮我写一个完整的代码给我吗?谢谢了~~ --------------------编程问答--------------------
引用 2 楼 guangliang05 的回复:
Quote: 引用 1 楼 fortheother 的回复:

int i = 0 ; i <= a.length ; i ++){
这个等于号 ,改成 i<a.length;
会发生数组越界。
a[a.length]是不能访问的,最大为length-1;

 * 对数组 a[] = {25,24,12,76,98,101,90,28}求出其中的奇数个数和偶数个数
如果要对一个数组求出奇数和偶数,我上面那样写为什么得不出结果呢?

。。。。。
你找个只是打印单数和双数吧。
求个数,需要一个变量保存个数。你这里没有。而且你程序有问题。 --------------------编程问答--------------------
引用 5 楼 fortheother 的回复:
Quote: 引用 2 楼 guangliang05 的回复:

Quote: 引用 1 楼 fortheother 的回复:

int i = 0 ; i <= a.length ; i ++){
这个等于号 ,改成 i<a.length;
会发生数组越界。
a[a.length]是不能访问的,最大为length-1;

 * 对数组 a[] = {25,24,12,76,98,101,90,28}求出其中的奇数个数和偶数个数
如果要对一个数组求出奇数和偶数,我上面那样写为什么得不出结果呢?

。。。。。
你找个只是打印单数和双数吧。
求个数,需要一个变量保存个数。你这里没有。而且你程序有问题。

大神。。
你能帮我写一个完整的代码吗?谢谢了~~ --------------------编程问答--------------------
public class GetNum
{
public static void main (String args[]){
        int a[] = {25,24,12,76,98,101,90,28} ;
        
        int oldnum = 0; //奇数个数
        int evennum = 0; //偶数个数.
        for (int i = 0 ; i < a.length ; i ++){
            if (a[i] % 2 == 1) {
                oldnum++;
            }
            else {
                evennum++;
            }
        }
        
        System.out.println("数列中奇数的个数为:"+oldnum);
        System.out.println("数列中偶数的个数为:"+evennum);
    }
}
--------------------编程问答--------------------
引用 7 楼 fortheother 的回复:
public class GetNum
{
public static void main (String args[]){
        int a[] = {25,24,12,76,98,101,90,28} ;
        
        int oldnum = 0; //奇数个数
        int evennum = 0; //偶数个数.
        for (int i = 0 ; i < a.length ; i ++){
            if (a[i] % 2 == 1) {
                oldnum++;
            }
            else {
                evennum++;
            }
        }
        
        System.out.println("数列中奇数的个数为:"+oldnum);
        System.out.println("数列中偶数的个数为:"+evennum);
    }
}


明白了。。谢谢大神。。
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,