使用数组方法的集合打印两个数字中最大的一个的总和?

时间:2014-09-15 13:52:46

标签: java

import java.util.*;

class Sumlarge
{
    public static void main(String...s)
    {
        int a[]=new int[5];
        Scanner sc=new Scanner(System.in);
        System.out.println("Enter 5 Numbers");  
        for(int i=0;i<5;i++)
        {
            a[i]=sc.nextInt();
        }
        System.out.println("Before Sorting");
        for(int j=0;j<5;j++) 
        {
            System.out.println(a[j]);
        }
        Arrays.sort( a );
        System.out.println("After Sorting");
        for(int j=0;j<5;j++)
        {
                System.out.println(a[j]);
        }
        Sum.Ob = new Sum();
        Ob.Sum1(a[5],a[4]);
    }
}


class Sum 
{ 
    void Sum1(int a,int b)
    {   
        int add;  
        add=a+b;
        System.out.println("Sum is"+add);
    }
}

2 个答案:

答案 0 :(得分:1)

这是不正确的,

Sum.Ob = new Sum();
Ob.Sum1(a[5],a[4]);

您的班级名为Sum。您可以拥有名为ob;

的实例
if (a.length > 2) {
  Sum ob = new Sum();
  ob.Sum1(a[a.length-1], a[a.length-2]); // <-- use length
}

最后,您的方法Sum1应该有一个不同的名称(以小写字母开头)。也许,printSum(int, int) - 但真正添加两个数字并打印结果似乎不值得一个方法。

答案 1 :(得分:0)

您的第Sum.Ob = new Sum();行肯定会引发错误。你的意思是写Sum Ob = new Sum();吗?无论如何,根本不需要Sum课程。替换这些行:

Sum.Ob = new Sum();
Ob.Sum1(a[5],a[4]);

用这个:

int sum = a[4] + a[3];

注意:使用索引4和3,因为索引从0开始。