public class StringTest { /** * 该方法只是简单的查看字符串中有没有汉字和汉字的个数 * @param s */ public void testMethod1(String s){ int bytesLength = s.getBytes().length; int sLength = s.length(); int hasNum = bytesLength - sLength; if(hasNum==0){ System.out.println("字符串中不含有汉字。"); } else if(hasNum>0){ System.out.println("含有 "+hasNum+" 个汉字。"); } } /** * 该方法中除了查看字符串中有没有汉字和汉字的个数外还能把汉字的内容显示出来 * @param s */ public void testMethod2(String s){ StringBuffer sb = new StringBuffer(); String tempStr ; int count=0; for(int i = 0;i<s.length();i++){ tempStr = String.valueOf(s.charAt(i)); if(tempStr.getBytes().length==2){ count++; sb.append(tempStr+" "); } } System.out.println("字符串中有"+count+"个汉字。"); System.out.println(sb.toString()); } /** * 该方法中除了查看字符串中有没有汉字和汉字的个数外还能把汉字的内容显示出来 * @param s */ public void testMethod3(String s){ int count = 0; char[] cStr = s.toCharArray(); for(int i = 0,j = cStr.length ; i < j; i++){ if(cStr[i] > 127){ count++; System.out.print(cStr[i]+" "); } } System.out.println("字符串中有"+count+"个汉字"); } public static void main(String[] args){ StringTest st = new StringTest(); String s ="dd我是addf中国人"; st.testMethod1(s); st.testMethod2(s); st.testMethod3(s); } }