Java 使用int sum(字符串s)方法编写计算器?

Java 使用int sum(字符串s)方法编写计算器?,java,Java,我刚开始学习java,我不知道为什么我的代码不能工作。这是任务: 编写一个名为Calculator的类,使用int sum(String s)方法。字符串s包含一组由空格(空格、制表符或换行符)分隔的整数。返回整数的和 您可以使用扫描仪对象来解决此问题。创建一个新的扫描器并将其存储在变量中,如中。然后,在.hasNextInt()中使用来控制while循环。while循环的每次迭代都使用in.nextInt()从字符串s中获取下一个整数。将此整数累加到变量中,并在循环退出时返回该变量 您可以使用

我刚开始学习java,我不知道为什么我的代码不能工作。这是任务:

编写一个名为Calculator的类,使用int sum(String s)方法。字符串s包含一组由空格(空格、制表符或换行符)分隔的整数。返回整数的和

您可以使用扫描仪对象来解决此问题。创建一个新的扫描器并将其存储在变量中,如中。然后,在.hasNextInt()中使用来控制while循环。while循环的每次迭代都使用in.nextInt()从字符串s中获取下一个整数。将此整数累加到变量中,并在循环退出时返回该变量

您可以使用main方法来测试您的方法,方法是创建Calculator类的一个实例,并使用该实例调用具有多个值组合的sum(…)

例如,sum(“3 4 5 27 3”)是42

这是我的代码:

import java.util.Scanner;
public class Calculator {
    int sum(String s) {
        Scanner in = new Scanner(s);
        while (in.hasNextInt())  {        
            in.nextInt();     
        }
        return 0;
    }
}

作业会告诉你怎么做。您可以使用适当的字符串从主方法调用该方法。

您是否看到自己在该代码的任何地方求和?您的老师已经给出了答案。你只需要按照指令:)所有的算法都在你的作业中有详细说明,你应该没有问题去实现它。没有看到一个变量来累加和。没有看到返回的变量。没有看到要测试的main()。没有看到太多的努力…总和意味着把东西加在一起。您的代码中没有任何添加项<.nextInt()中的code>in正在获取一个int,然后将其丢弃。您错过的部分说明是“将这个整数累加到一个变量中,并在循环退出时返回该变量”。但请尝试使用有意义的变量名,如“sum”或“acculator”,而不是“i”。如果OP是java的新手,那么最好从良好的习惯开始学习。
public int sum(String s) {
    int i = 0;
    Scanner in = new Scanner(s);
    while (in.hasNextInt())  {        
        i += in.nextInt();     
    }
    return i;
}