【问题标题】:How can I count the number grater then 10 in the first array?如何计算第一个数组中大于 10 的数字?
【发布时间】:2015-11-13 17:21:02
【问题描述】:

我想数一下RandomArray中有多少个数大于10

例如,如果RandomArray 包含[1, 5, 9, 11, 18, 23],它将返回3

for(i=1; i<=9; i++) {
    RandomArray[i] = r.nextInt((upper + 1) - lower) + lower;
    System.out.println(i + 1 + " the random  number is : "  +RandomArray[i]);

【问题讨论】:

  • 你要数RandomArray中有多少个数大于10?
  • 是的,我想数一下那些数字大于 10。
  • 请向我们展示一些代码并就您不理解的概念提出具体问题。否则,我们将假定这是您想为您完成的一些作业,没有人会回答。
  • 我尝试使用 if 语句,但它计算所有数字。
  • @Turing85 是对的。如果您不知道代码有什么问题,请使用 if 语句显示代码。

标签: java arrays if-statement


【解决方案1】:

Java 8 解决方案。从数组中创建一个流,过滤以保持大于 10 的值并计算它们:

long count = Arrays.stream(RandomArray).filter(n -> n > 10).count();

【讨论】:

  • 我知道你在那里做了什么;)我们可以打赌他的作业主题是if-statments吗?
  • 你是支持还是反对?我赌。但是用 Java 8 流编写代码对我来说很有趣:-)
【解决方案2】:

添加counter

int counter = 0;
for(i=1; i<=9; i++) {
    RandomArray[i] = r.nextInt((upper + 1) - lower) + lower;
    if (RandomArray[i] > 10) {
      counter++;
     }
}

【讨论】:

  • 你知道... SO不是一个有人发布问题而你发布代码的地方,它可以解决这个问题。
  • @Turing85 他提到他尝试了不起作用的 if 语句。因此,我花时间向他展示了如何构建声明。此外,问题的简单性不需要任何进一步的提示。
  • 您甚至没有看到他的if-statement,因此不知道他是如何解决问题的。但你为什么要关心?你得到了你的声誉......
  • @Turing85 请冷静一下。再次阅读我之前的评论并正确理解它。我没有看到他是如何组织它的,因为他显然做错了。我用他自己的代码向他展示了正确的方法,让他了解它是如何工作的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-27
  • 2022-01-03
  • 1970-01-01
  • 1970-01-01
  • 2018-11-12
  • 1970-01-01
相关资源
最近更新 更多