小编Grv*_*v21的帖子

从数组中找到最小值 - 我不明白

所以我知道下面的代码是有效的,但由于我对编码很新,我不明白为什么以及如何工作.如果有人能向我解释,那将有助于我理解编程.

代码如下:

 public static double minValue(double[] times){  
        double minValue = times[0];  

        for(int i = 1; i < times.length; i++){  
            if (times[i] < minValue){  
                minValue = times[i];  
            }  
        }  
        minValue = minValue / 60;
        return minValue;  
    }
Run Code Online (Sandbox Code Playgroud)

这里我不明白的是:double minValue = times[0];为什么这个值0?它也适用于其他数字,低于数组的长度.使用空格或大于数组长度的数字会返回错误,但必须有代码专门使用的原因0.

然后这个:

for(int i = 1; i < times.length; i++){  
    if (times[i] < minValue) {  
         minValue = times[i];  
    }
}
Run Code Online (Sandbox Code Playgroud)

究竟如何确定最小值?

java arrays algorithm minimum

3
推荐指数
1
解决办法
71
查看次数

input.nextLine()在while循环中带有一个字符串

我很难理解我的代码到底出了什么问题.我不是一个好的开发人员,我还在学习,所以所有提示都非常受欢迎!:)

所以我正在做的是有一个while循环来检查用户是否给了Scanner某个字母.如果有,则循环结束.如果没有,它会不断再问这个问题.

我的代码如下:

Scanner userInput = new Scanner(System.in);
String userAnswer = userInput.nextLine();
boolean isTrue = true;

     while (isTrue){
         if (userAnswer.equals("e")){
             System.out.println("Wrong, try again");
             userInput.nextLine();
         } else if (userAnswer.equals("k")) {
             System.out.println("That's right!"); 
             isTrue = false;
             break;
         }      
     } 
Run Code Online (Sandbox Code Playgroud)

它有效,有点.如果用户给出答案"k"作为第一个答案,则打印出"那是对的!" 然后打破循环.如果用户给出答案"e"作为第一个答案,则打印出"错误,再试一次"并给出一个新行再次回答,但如果你写了正确的字母,即"k",它仍会打印出来"错误,再试一次"循环,不会跳转到"else if"语句.

我如何在这方面工作?非常感谢提前.

java string loops user-input while-loop

0
推荐指数
1
解决办法
933
查看次数

标签 统计

java ×2

algorithm ×1

arrays ×1

loops ×1

minimum ×1

string ×1

user-input ×1

while-loop ×1