欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

在java switch中使用String作为分支条件 (转)

程序员文章站 2022-07-12 18:37:31
...

在java中明确规定switch里面只允许使用int,char,byte,short,和enum类型,但是我们实际编程过程中往往需要通过String来进行比较。那么应该怎么做呢?其实很简单,我们只需要将enum类型做一个小小的封装就可以达到我们的目的

Animal enum类:

Java代码 在java switch中使用String作为分支条件 (转)
            
    
    博客分类: java 在java switch中使用String作为分支条件 (转)
            
    
    博客分类: java
  1. public enum Animal {   
  2.     dog,cat,bear;   
  3.        
  4.     public static Animal getAnimal(String animal){   
  5.         return valueOf(animal.toLowerCase());   
  6.     }   
  7.        
  8. }  
public enum Animal {
	dog,cat,bear;
	
	public static Animal getAnimal(String animal){
		return valueOf(animal.toLowerCase());
	}
	
}

 Client 调用:

Java代码 在java switch中使用String作为分支条件 (转)
            
    
    博客分类: java 在java switch中使用String作为分支条件 (转)
            
    
    博客分类: java
  1. public class Client {   
  2.   
  3.     public void caseAnimal(String animal){   
  4.         switch(Animal.getAnimal(animal)){   
  5.         case cat:   
  6.             System.out.println("this is a cat");   
  7.             break;   
  8.         case dog:   
  9.             System.out.println("this is a dog");   
  10.             break;   
  11.         case bear:   
  12.             System.out.println("this is a bear");   
  13.             break;   
  14.         }   
  15.     }   
  16.     /**  
  17.      * @param args  
  18.      */  
  19.     public static void main(String[] args) {   
  20.             Client client = new Client();   
  21.             client.caseAnimal("cat");   
  22.     }   
  23.   
  24. }  
public class Client {

	public void caseAnimal(String animal){
		switch(Animal.getAnimal(animal)){
		case cat:
			System.out.println("this is a cat");
			break;
		case dog:
			System.out.println("this is a dog");
			break;
		case bear:
			System.out.println("this is a bear");
			break;
		}
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
			Client client = new Client();
			client.caseAnimal("cat");
	}

}

 看,是不是很简单啊。希望对大家写程序过程中有所帮助