java中如何输⼊char类型
java中基本数据类型的输⼊包括整形的输⼊:in.nextInt();单精度浮点型:in.nextFloat();双精度浮点型:in.nextDouble();字符串类型:in.next();in.nextLine();那么,您是否以为char类型也如in.nextChar();这样呢?如果您这样写过,那么您⼀定见过这个error:“The method nextChar() is undefined for the type Scanner”。那么char类型该如何输⼊呢
有时候需要我们⽤Scanner接收char类型数据,⽽不是接收String。⽐如,当我们要⽤到switch()语句时,就不能⽤String类型了。switch语句:switch关键字的中⽂意思是开关、转换的意思,switch语句在条件语句中特别适合做⼀组变量相等的判断,在结构上⽐if语句要清晰很多。
  switch语句的语法格式为:
   switch(表达式){
   case 值1:
   功能代码1;
  [break;]
   case 值2:
   功能代码2;
   [break;]
   ……
  default:
   功能代码1;
   [break;]
   }
   语法说明:
   1、表达式的类型只能为byte、short、char和int这4种之⼀。
   2、值1、值2…值n只能为常数或常量,不能为变量。
   3、功能代码部分可以写任意多句。
   4、 break关键字的意思是中断,指结束switch语句,break语句为可选。
   5、 case语句可以有任意多句,是标号语句。
   6、 default语句可以写在switch语句中的任意位置,功能类似于if语句中的else.执⾏流程:当表达式的值和对应case语句后的值相同时,既从该位置开始向下执⾏,⼀直执⾏到switch语句的结束,在执⾏中,如果遇到break语句,则结束switch语句的执⾏。
正常使⽤Scanner时,可以这样:
Scanner in = new Scanner(System.in);
char c = in.next().charAt(0);
下⾯是ACM中的模拟计算器的题⽬,以此作为⽰例:
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner in = new Scanner(System.in); int a = in.nextInt();
int b = in.nextInt();
char c = in.next().charAt(0);
switch(c)
{
case '+':
System.out.printf("%d",a+b);
break;
case '-':
java switch case stringSystem.out.printf("%d",a-b);
break;
case '*':
System.out.printf("%d",a*b);
break;
case '/':
if(b!=0)
{
System.out.printf("%d",a/b);
}
break;
}
}
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。