publicfinalclassISBN {/*** 根据输入的ISBN号,检验ISBN的有效性。依据 GB/T 5795-2006 和 ISO 2108:2005 ISBN
* 10位标准和13位标准实现(13位标准自2007年1月1日开始实行,在此之前采用10位标准)。
*
*@paramString isbn:需要进行校验的ISBN字符串
*@returntrue:所输入的ISBN校验正确;
false:所输入的ISBN校验错误*/publicstaticbooleancheckISBN(String isbn) {intcount=0;intcheckBitInt=0;//将ISBN数据全取大写字母//isbn = isbn.toUpperCase();char[] cs=isbn.toCharArray();switch(isbn.length()) {case10://****************************************************************//当ISBN为10位时,进行的校验,用于2007年1月1日前的出版物//数据格式:从左至右前9位为ISBN数据,第10位为校验位//校验方法://(1) 从左至右将前9位数据从10开始至2进行编号,作为位权//(2) 将9位数据与各位位权进行加权,并求其9位和(称为加权和,记作M)//(3) 第10位校验位计算方法,校验位为C://M + C ≡ 0 (mod 11)//C为10时,记作“X”//****************************************************************//取出前9位数字进行加权和计算for(inti=0; i<9; i+&#