[英]"How can I request an if-else input after a switch statement?"
在 switch 語句之后,我想請求一個“Y”或“N”語句並打印出相應響應的語句。 如何聲明輸入字符,然后為該值提供掃描儀輸入?
我試過將輸入用作字符和整數。 我也嘗試過使用布爾方法。
import java.util.*;
public class Dowhile {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int x;
System.out.println("0,1,-1: ");
x = in.nextInt();
switch(x)
{
case 1:
System.out.println("Positive");
break;
case -1:
System.out.println("Negative");
break;
case 0:
System.out.println("Zero");
break;
default:
System.out.println("You're a bad person!");
break;
}
char input = (('Y'||'N'));
System.out.println("Enter 'Y' or 'N'");
in.nextInt();
if(input = 'Y')
System.out.println("OK");
else
System.out.println("wow");
}}
我希望輸出是相應輸入的 println 響應。
我會嘗試這樣的事情:
System.out.println("Enter 'Y' or 'N'");
char input = in.next("Y|N").charAt(0);
if('Y' == input)
System.out.println("OK");
else
System.out.println("wow");
in.next("Y|N")
部分請求“Y”或“N”(字符串"Y|N"
被解釋為正則表達式)並將結果作為字符串返回。 charAt(0)
函數返回此字符串的第一個(也是唯一一個)字符。
請注意,如果您既不輸入“Y”也不輸入“N”,此方法會引發異常。
如果你想避免異常,你可以使用下面的代碼片段:
System.out.println("Enter 'Y' or 'N'");
char input = in.next(".").charAt(0);
if('Y' == input)
System.out.println("OK");
else if ('N' == input)
System.out.println("wow");
else
System.out.println("You haven't entered a valid character");
但要注意,因為如果有人輸入的不是整數,您對in.nextInt()
的第一次調用仍然會失敗。
在 switch 語句之后,我想請求一個“Y”或“N”語句並打印出相應響應的語句。 如何聲明輸入字符,然后為該值提供掃描儀輸入?
我嘗試使用輸入作為字符和 integer。 我也嘗試過使用 boolean 方法。
import java.util.*;
public class Dowhile {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int x;
System.out.println("0,1,-1: ");
x = in.nextInt();
switch(x)
{
case 1:
System.out.println("Positive");
break;
case -1:
System.out.println("Negative");
break;
case 0:
System.out.println("Zero");
break;
default:
System.out.println("You're a bad person!");
break;
}
char input = (('Y'||'N'));
System.out.println("Enter 'Y' or 'N'");
in.nextInt();
if(input = 'Y')
System.out.println("OK");
else
System.out.println("wow");
}}
我希望 output 是相應輸入的 println 響應。
假設您不需要擴展您的程序來執行除打印到控制台之外的任何操作,以下是我將采用的方法:
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("0,1,-1: ");
int x = in.nextInt();
System.out.println(
x == 1 ? "Positive" :
x == -1 ? "Negative" :
x == 0 ? "Zero" :
"You're a bad person!"
);
System.out.println("Enter 'Y' or 'N'");
System.out.println(in.next().equalsIgnoreCase("Y") ? "OK" : "wow");
in.close();
}
三元運算符用於檢查條件並在沒有switch
或if
語句的情況下打印到控制台。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.