gpt4 book ai didi

java - Java中方法的类型

转载 作者:行者123 更新时间:2023-12-01 19:30:11 27 4
gpt4 key购买 nike

我是 Java 新手,正在尝试这个 ex,但它给我带来了一些“primoGiorno”方法类型的问题:我认为它应该是正确的(“primoGiorno”接受 int 并返回 int),但它给了我错误:“该方法必须返回int类型的结果”;我不明白为什么:它通过切换“x”来返回:0、1、2 等,它们是 int 值。我哪里做错了?

import java.util.Scanner;
public class CheGiorno {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);
System.out.println ("Selezionare numero da 0 (Lunedì) a 6 (Domenica");
int inizioAnno = scanner.nextInt();
primoGiorno (inizioAnno);




scanner.close();

}


private static int primoGiorno (int x) {
switch (x) {
case 0 : return 0; break;
case 1 : return 1; break;
case 2 : return 2; break;
case 3 : return 3; break;
case 4 : return 4; break;
case 5 : return 5; break;
case 6 : return 6; break;
default : System.out.println ("Valore errato");
}

}
}

最佳答案

这一行打破了它:

默认:System.out.println(“Valore errato”);

如果达到默认值,它仍然必须返回一个int值,而System.out.println("Valore errato");显然不是。

在发生错误时返回 int 的函数通常会返回 -1。

类似这样的事情:

    private static int primoGiorno (int x) {
switch (x) {
case 0 : return 0; break;
case 1 : return 1; break;
case 2 : return 2; break;
case 3 : return 3; break;
case 4 : return 4; break;
case 5 : return 5; break;
case 6 : return 6; break;
default : return -1;
}

}

您还可以删除 break; 语句,因为 return 无论如何都会结束该函数。

关于java - Java中方法的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59972205/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com