java中怎么判断一个字符是否是中文?【最好有代码,省的在去造车子】

java中如何判断一个字符是否是中文?【最好有代码,省的在去造车子】
java中如何判断一个字符是否是中文?【最好有代码,省的在去造车子】

------解决方案--------------------
http://blog.csdn.net/zhengjianqi/archive/2008/07/04/2612385.aspx
Java code
package test;



import java.util.Random;



public class IsChineseOrEnglish {

    //  GENERAL_PUNCTUATION 判断中文的“号

    //  CJK_SYMBOLS_AND_PUNCTUATION 判断中文的。号

    //  HALFWIDTH_AND_FULLWIDTH_FORMS 判断中文的,号

    public static boolean isChinese(char c) {

        Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);

        if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS

                || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS

                || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A

                || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION

                || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION

                || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {

            return true;

        }

        return false;

    }



    public static void isChinese(String strName) {

        char[] ch = strName.toCharArray();

        for (int i = 0; i < ch.length; i++) {

            char c = ch[i];

            if (isChinese(c) == true) {

                System.out.println(isChinese(c));

                return;

            } else {

                System.out.println(isChinese(c));

                return;

            }

        }

    }

    public static void main(String[] args) {

        Random r = new Random();

        for(int i=0;i<20;i++)

        System.out.println(r.nextInt(10)+1);

        isChinese("き");

        isChinese("中国");

    }



}

------解决方案--------------------
String string = "汉字";
if(string.length() != string.getBytes().length)
System.out.println("包含汉字");