×

java switch case string sw

java switch case string(java switch case,case下有多条语句,执行输入时不能输入字符的问题)

admin admin 发表于2024-03-26 10:56:15 浏览16 评论0

抢沙发发表评论

其实java switch case string的问题并不复杂,但是又很多的朋友都不太了解java switch case,case下有多条语句,执行输入时不能输入字符的问题,因此呢,今天小编就来为大家分享java switch case string的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

本文目录

java switch case,case下有多条语句,执行输入时不能输入字符的问题

你把choose定义为整型了,输入的数必须是整型才能与switch中的case 选择比配执行system.out.print()如果想输入字符,将choose定义为char型,case为case’要输入的字符’就ok了

java 中输入月份 用switch case输出季节为什么不能运行!

case后只能跟一个值,不能跟着多个,参考下下边的程序试试import java.util.Scanner;public class Fangfa1 {public static void main(String args) {String i;Scanner scanner=new Scanner(System.in);System.out.println("请输入当前月份:");i=scanner.nextLine();switch (i) {case 12:System.out.println("现在是冬季");break;case 1:System.out.println("现在是冬季");break;case 2:System.out.println("现在是冬季");break;case 3:System.out.println("现在是春季");break;case 4:System.out.println("现在是春季");break;case 5:System.out.println("现在是春季");break;case 6:System.out.println("现在是夏季");break;case 7:System.out.println("现在是夏季");break;case 8:System.out.println("现在是夏季");break;case 9:System.out.println("现在是冬季");break;case 10:System.out.println("现在是冬季");break;case 11:System.out.println("现在是冬季");break;default:System.out.println("只有火星才有"+i+"月");break;}}}

java 中switch能用string类型的吗

Java JDK1.8和JRE1.8以后switch可以用String类型了,

我给你个例子,你看看吧.

public class CCC { public static void main(String args) {  String s="abc";  int a=0;  switch(s){   case "a":a=1;break;   case "ab":a=2;break;   case "abc":a=3;break;  }  System.out.println(a); }}

运行结果

3

Java语言中的switch case语句求解

我改了下import java.util.Scanner;public class SwitchCaseDemo { /** * @param args */ //不需要你自定义下面的方法 ,switch 本来就是和case在一起用的 你把Switch(a);放在那和case的结构就错了 public static void main(String args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); System.out.println("输入学生的成绩: "); int a=sc.nextInt(); switch(a) { case 100: case 99:case 98:case 97:case 96:case 95:case 94:System.out.println("该学生的成绩的等级为A"); break; case 89: case 88: case 87: case 86: case 85: case 84: case 83: case 82: case 81: case 80: System.out.println("该学生的成绩的等级为B"); break; case 79: case 78: case 77: case 76: case 75: case 74: case 73: case 72: case 71: case 70: System.out.println("该学生的成绩的等级为C"); break; case 69: case 68: case 67: case 66: case 65: case 64: case 63: case 62: case 61: case 60: System.out.println("该学生的成绩的等级为D"); break; default: System.out.println("该学生的成绩的等级为E"); } }/*private static void Switch(int a) { // TODO Auto-generated method stub } } 为什么这个是错的。求解释。。。。 这是case的错误,看不懂。。。T T,求解答。。。。 Multiple markers at this line - Syntax error on token "case", assert expected - Syntax error on token(s), misplaced construct(s)}*/}

关于switch语句中使用String类型的实现原理

在Java 7 以后, switch 语句可以用作String类型上。 从本质来讲, switch 对字符串的支持,其实也是int类型值的匹配。它的实现原理如下: 通过对 case 后面的String对象调用 hashCode( )方法,得到一个int类型的Hash值,然后用这个Hash值来唯一标识着这个 case 。 那么当匹配的时候,首先调用这个字符串的 hashCode() 方法,获取一个Hash值(int类型),用这个Hash值来匹配所有的 case , 如果没有匹配成功,说明不存在;如果匹配成功了,接着会调用字符串的 equals() 方法进行匹配。 由此看出,String变量不能是null;同时, switch 的 case 子句中使用的字符串也不能为null。

关于java switch case string到此分享完毕,希望能帮助到您。