Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中将用户输入(字符串)分配给整数_Java_String_Int - Fatal编程技术网

在Java中将用户输入(字符串)分配给整数

在Java中将用户输入(字符串)分配给整数,java,string,int,Java,String,Int,如果用户输入字符串,例如“Sunday”,如何将“Sunday”分配给int值(例如零) 编辑: 以下是计算x天数过后一周中的哪一天的最终代码。不确定这是否是最有效的方法 谢谢大家的专业知识 public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Enter today's day: "); String day = input.n

如果用户输入字符串,例如“Sunday”,如何将“Sunday”分配给int值(例如零)

编辑: 以下是计算x天数过后一周中的哪一天的最终代码。不确定这是否是最有效的方法

谢谢大家的专业知识

public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.print("Enter today's day: ");
    String day = input.next();
    int todayDay = changeToString(day);
    System.out.println(todayDay);
}

public static int changeToString(String day) {
    int dayName = 0;

    switch (day) {

        case "Monday":
            dayName = 1;
            break;
        case "Tuesday":
            dayName = 2;
            break;
        case "Wednesday":
            dayName = 3;
        case "Thursday":
            dayName = 4;
        case "Friday":
            dayName = 5;
        case "Saturday":
            dayName = 6;

    }

    int dayselapsed = input.nextInt();
    int futureday = (dayName + dayselapsed) % 7; 

    switch (futureday) {

        case 0: System.out.println("In " + dayselapsed + " days, it will be Sunday");
            break;
        case 1: System.out.println("In " + dayselapsed + " days, it will be Monday"); 
            break;
        case 2: System.out.println("In " + dayselapsed + " days, it will be Tuesday"); 
            break;
        case 3: System.out.println("In " + dayselapsed + " days, it will be Wednesday"); 
            break;
        case 4: System.out.println("In " + dayselapsed + " days, it will be Thursday"); 
            break;
        case 5: System.out.println("In " + dayselapsed + " days, it will be Friday"); 
            break;
        case 6: System.out.println("In " + dayselapsed + " days, it will be Saturday"); 
            break;
}
    return 0;

    }

}

你可以用这个方法

public class Day {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("Enter today's day: ");
        String day = input.next();
        int todayDay = changeToString(day);
        System.out.println(todayDay);
    }

    public static int changeToString(String day) {
        int dayName = 0;

        switch (day) {
            case "Monday":
                dayName = 1;
                break;
            case "Tuesday":
                dayName = 2;
                break;
             ......
        }

        return dayName;
    }
}

你的例子只是一个例子吗?还是你的问题?可以使用多种策略,具体取决于您的具体情况、本地化、是否与日期相关、是否与数学相关等。如果使用java 8,请选中此复选框,我希望为用户输入的一周中的每一天分配一个int值(例如,如果用户输入“Sunday”,则将其分配给我选择的int值-零)。因此,只有在用户输入“Sunday”时,我才能执行特定的零计算。我将执行相同的计算,但如果用户输入“星期一”,则int值为1。我想知道如何将“星期一”分配给1,“星期二”分配给2,等等。现在我无法回答这个问题,因为Tim已经关闭了它,但最简单的方法是使用JDK中内置的名称。然后,你只需要两行就可以做到
List dayNames=Arrays.asList(新的DateFormatSymbols().getWeekdays());返回dayNames.indexOf(day)-1在这种情况下,主方法是什么?您可以将三行移到主方法。答案已更新。