字符串截取题型
2016-03-27 13:22
357 查看
题意:对一个字符串按照字节进行截取,
要求:通过输入一个字符串,以及需要截取的长度,处理完毕之后返回截取后的字符串,同时如果是汉字的话,不能出现半个汉字的情况。
如:”李海Hello“,截取3个字节,结果为:李
答案:
要求:通过输入一个字符串,以及需要截取的长度,处理完毕之后返回截取后的字符串,同时如果是汉字的话,不能出现半个汉字的情况。
如:”李海Hello“,截取3个字节,结果为:李
答案:
public class Main { public String splitString(String str1, int num) { String result = ""; byte[] bytes = str1.getBytes(); if (bytes[num - 1] > 0) { result = new String(bytes, 0, num); } else { int num2 = 0; for (int i = 0; i < num; i++) { if (bytes[i] < 0) { num2++; } } if (num2 % 2 == 0) { result = new String(bytes, 0, num); } else { result = new String(bytes, 0, num - 1); } } System.out.println(result + "******"); return result; } public static void main(String[] args) { Main ts = new Main(); String a1 = "li"; String a2 = "海宾"; String a3 = "Hello"; String a4 = "ok"; a1 = ts.splitString(a1, 2); a2 = ts.splitString(a2, 2); a3 = ts.splitString(a3, 5); a4 = ts.splitString(a4, 2); System.out.println(a1 + "#\n" + a2 + "#\n" + a3 + "#\n" + a4); } }
相关文章推荐
- JSP proxool+mysql数据库连接池配置
- 设计模式之观察者模式
- lintcode:Subsets
- 1003
- 【机房重构】——VS2013程序打包
- 2000
- 《Linux 内核分析》第五周
- windows下mysql忘记root密码的解决方法
- 《Linux内核与分析》第五周
- jQuery选择器
- [BZOJ4134][JZOJ4401]ljw和lzr的hack比赛
- osx下配置qt开发环境
- C++中vector的用法
- ExpandableListView的实现
- 数组中将所有奇数排到偶数前面
- 杨辉三角 函数递归
- 第五章项目1——(3)三角形类雏形
- oracle常用函数
- 桶排序
- 感知哈希算法的opencv实现