• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

java检测isbn是否合法

JAVA相关 水墨上仙 1516次浏览

java检测isbn是否合法

/** 
 * An ISBN Utility 
 * @author Julius Schorzman 
 * (C) 2006 -- Provided under GPL 
 */  
public class ISBNUtil {  
    /** 
     * Checks if the passed string is a valid ISBN number. 
     * @param isbn The ISBN String 
     * @return true if it is a valid isbn; false in all other cases. 
     */  
    public static boolean isISBN(String isbn) {  
          
        try {  
            if (isbn.length() != 10) {  
                return false;  
            }  
              
            int weight = 10;  
            int rollingSum = 0;  
            for ( int i = 0 ; i < 9 ; i++ ) {  
                int isbnDigit = Character.digit(isbn.charAt(i), 10);  
                rollingSum += isbnDigit * weight--;  
            }  
              
            int mod = rollingSum % 11;  
            mod = 11 - mod;  
            if ( mod == 11 ) mod = 0;  
              
            char checkSum = isbn.charAt(9);  
            if (Character.toLowerCase(checkSum) == 'x') {  
                if ( mod == 10 ) return true;  
            } else {  
                if (Character.digit(checkSum, 10) == mod) return true;  
            }  
            return false;  
        } catch (Exception e) {  
            return false;  
        }  
    }  
      
    public static void main(String[] args) {  
        System.out.println("true: "+ISBNUtil.isISBN("031234161X"));  
        System.out.println("true: "+ISBNUtil.isISBN("0525949488"));  
        System.out.println("true: "+ISBNUtil.isISBN("076360013X"));  
        System.out.println("true: "+ISBNUtil.isISBN("0671027360"));  
        System.out.println("true: "+ISBNUtil.isISBN("0803612079"));  
        System.out.println("true: "+ISBNUtil.isISBN("0307263118"));  
        System.out.println("true: "+ISBNUtil.isISBN("0684856093"));  
        System.out.println("true: "+ISBNUtil.isISBN("0767916565"));  
        System.out.println("true: "+ISBNUtil.isISBN("0071392319"));  
        System.out.println("true: "+ISBNUtil.isISBN("1400032806"));  
        System.out.println("true: "+ISBNUtil.isISBN("0765305240"));  
  
        System.out.println("false: "+ISBNUtil.isISBN("0312341613"));  
        System.out.println("false: "+ISBNUtil.isISBN("052594948X"));  
        System.out.println("false: "+ISBNUtil.isISBN("0763600138"));  
        System.out.println("false: "+ISBNUtil.isISBN("0671027364"));  
        System.out.println("false: "+ISBNUtil.isISBN("080361207X"));  
        System.out.println("false: "+ISBNUtil.isISBN("0307263110"));  
        System.out.println("false: "+ISBNUtil.isISBN("0684856092"));  
        System.out.println("false: "+ISBNUtil.isISBN("0767916567"));  
        System.out.println("false: "+ISBNUtil.isISBN("0071392318"));  
        System.out.println("false: "+ISBNUtil.isISBN("1400032801"));  
        System.out.println("false: "+ISBNUtil.isISBN("0765305241"));  
    }  
}  


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明java检测isbn是否合法
喜欢 (0)
加载中……