编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。
package string; class SplitString { private String str; private int byteNum;
public SplitString(){}
public SplitString(String str,int byteNum) { this.str=str; this.byteNum=byteNum;
} public void splitIt() {
byte bt[]=str.getBytes(); System.out.println("Length of this String ===>"+bt.length); if(byteNum>1) { if(bt[byteNum]<0) { String substrx=new String(bt,0,--byteNum); System.out.println(substrx); }else { String substrex=new String(bt,0,byteNum); System.out.println(substrex); } }else { if(byteNum==1) { if(bt[byteNum]<0) { String substr1=new String(bt,0,++byteNum); System.out.println(substr1); }else { String subStr2=new String(bt,0,byteNum); System.out.println(subStr2); } }else { System.out.println("输入错误!!!请输入大于零的整数:"); } } } }
public class TestSplitString { public static void main(String args[]) { String str="我ABC汉DEF"; int num=6; SplitString sptstr = new SplitString(str,num); sptstr.splitIt(); } }
  
|