java如何获取字符串长度
string对象创建的字符串长度是固定的,用length()方法获取的是char对象的个数
操作方法
- 01
首先打开eclipse
- 02
新建一个java项目,名字随意起
- 03
名字起好后,点击完成
- 04
右键点击项目名称,新建,类
- 05
类的名字叫TextLength 包的名字叫 com.zf.s2 点击完成
- 06
首先要判断是否是汉字 public static int getChineseCount(String s) throws Exception{//获得汉字的长度 char c; int chineseCount=0; if(!"".equals("")){//判断是否为空 s=new String(s.getBytes(),"GBK"); //进行统一编码 } for(int i=0;i<s.length();i++){//for循环 c=s.charAt(i); //获得字符串中的每个字符 if(isChineseChar(c)){//调用方法进行判断是否是汉字 chineseCount++; //等同于chineseCount=chineseCount+1 } } return chineseCount; //返回汉字个数 }
- 07
获得字母、数字、空格的个数 public static String getStringInfo(String s){ char ch; int character=0,blank=0,number=0; for(int i=0;i <s.length();i++) //for循环 { ch=s.charAt(i); if((ch>='a'&&ch <='z')||(ch>='A'&&ch <='Z'))//统计字母 character++; //等同于character=character+1 else if(ch==' ') //统计空格 blank++; //等同于blank=blank+1 else if(ch>='0'&& ch <='9') //统计数字 number++; //等同于number=number+1; }
- 08
完整代码 package com.zf.s2;//创建一个包 public class TextLength {//描述字符串长度的类 public static boolean isChineseChar(char c) throws Exception{//判断是否是一个汉字 return String.valueOf(c).getBytes("GBK").length>1;//汉字的字节数大于1 } public static int getChineseCount(String s) throws Exception{//获得汉字的长度 char c; int chineseCount=0; if(!"".equals("")){//判断是否为空 s=new String(s.getBytes(),"GBK"); //进行统一编码 } for(int i=0;i<s.length();i++){//for循环 c=s.charAt(i); //获得字符串中的每个字符 if(isChineseChar(c)){//调用方法进行判断是否是汉字 chineseCount++; //等同于chineseCount=chineseCount+1 } } return chineseCount; //返回汉字个数 } public static String getStringInfo(String s){//获得字母、数字、空格的个数 char ch; int character=0,blank=0,number=0; for(int i=0;i <s.length();i++) //for循环 { ch=s.charAt(i); if((ch>='a'&&ch <='z')||(ch>='A'&&ch <='Z'))//统计字母 character++; //等同于character=character+1 else if(ch==' ') //统计空格 blank++; //等同于blank=blank+1 else if(ch>='0'&& ch <='9') //统计数字 number++; //等同于number=number+1; } return "字符串中共有"+character+"个字母,"+blank+"个空格,"+number+"个数字"; } public static void main(String []args) throws Exception {//java程序的主入口方法 String s="hello world 世界你好!!123*"; System.out.println("字符串的总长度:"+s.length());//显示字符串长度 System.out.println("字符串中汉字长度:"+getChineseCount(s)); //调用方法显示汉字长度 System.out.println(getStringInfo(s)); //调用方法显示其它字母类型的长度 } }