输入一组数,求和。当输入为0或者负数时程序结束。
以上就是题目。
这里是我写的代码:
import java.util.Scanner;public class AddSum {
      public static void main(String[] args){
     System.out.println("sum="+(new Sum()).getSum());
      
}
}
class Sum{
public float getSum(){
float num=1;
System.out.println("please input number");

float sum=0;
while(num>0){
Scanner reader=new Scanner(System.in);
num=reader.nextFloat();
sum+=num;

}
return sum;
}
}
请各位看一下,有什么不规范的希望能够指出。
或者有其他的方法的话也可以贴出来让我这个新手饱下眼福,谢谢啦!

解决方案 »

  1.   

    你这个简单点搞就好了,不用整那么多类。import java.util.Scanner;
    public class Sum {
    public static void main(String[] args) {
    int sum = 0;
    Scanner s = new Scanner(System.in);
    int i;
    while((i=s.nextInt()) > 0) 
    sum += i;
    System.out.println("sum is: " + sum);
    }
    }
      

  2.   

    public class mysum {
    int ok = 0; /**
     * 输入一组数,求和。当输入为0或者负数时程序结束。
     */
    public static void main(String[] args) {
    int num[] = { 1, -4, -5, 8, -2,0};
    mysum s=new mysum();
    System.out.println(s.sum(num));
    } public int sum(int num[]) { // 1 1
    for (int i = 0; i < num.length; i++) {
    if (num[i] >= 0) {
     ok = ok + num[i];
    }else{
    break;
    }
    }
    return ok;
    }
    }
    楼主可以看看这段代码。
      

  3.   

    public class mysum {
    int ok = 0; /**
     * 输入一组数,求和。当输入为0或者负数时程序结束。
     */
    public static void main(String[] args) {
    int num[] = { 1, -4, -5, 8, -2,0};
    mysum s=new mysum();
    System.out.println(s.sum(num));
    } public int sum(int num[]) { // 1 1
    for (int i = 0; i < num.length; i++) {
    if (num[i] >= 0) {
     ok = ok + num[i];
    }else{
    break;
    }
    }
    return ok;
    }
    }楼主可以看看这段代码