题目描述
编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF"6,应该输出为"我ABC"而不是"我ABC+汉的半个"。
输入描述:
输入待截取的字符串及长度
输出描述:
截取后的字符串
示例1
输入
复制
我ABC汉DEF 6
代码:
import java.util.Scanner;
public class Main{
public static void getResult(int N,String str){
char[] temp=str.toCharArray();
int count=0;
int i=0;
StringBuilder stringBuilder = new StringBuilder();
for(int j=0;j<str.length()&&count<N;j++){
if(temp[j]>128){
if(count+2>N){
break;
}
count+=2;
}else{
count++;
}
stringBuilder.append(temp[j]);
}
System.out.println(stringBuilder.toString());
}
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
String str=sc.next();
int N=sc.nextInt();
getResult(N,str);
}
sc.close();
}
}
输出
复制
我ABC