java 一个截取字符串的函数
发布时间 - 2026-01-10 23:12:22 点击率:次编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。

一、需要分析
1、输入为一个字符串和字节数,输出为按字节截取的字符串--------------》按照字节[byte]截取操作字符串,先将String转换成byte类型
2、汉字不可以截半----------------------------------------------------------------------------------------------------------》汉字截半的话对应字节的ASC码为小于0的数值
二、技术难点
1、知道汉字截半的话对应字节的ASC码为小于0的数值
2、对字符串操作应该都要面对的一个问题,字符串是否有效null, 字符串的长度0,1这种边界处理
代码实现:
package com.itheima;
/**
* 10、 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
* 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。
*
* @author 281167413@qq.com
*/
public class Test10 {
public static void main(String[] args) {
String srcStr1 = "我ABC";
String srcStr2 = "我ABC汉DEF";
splitString(srcStr1, 4);
splitString(srcStr2, 6);
}
public static void splitString(String src, int len) {
int byteNum = 0;
if (null == src) {
System.out.println("The source String is null!");
return;
}
byteNum = src.length();
byte bt[] = src.getBytes(); // 将String转换成byte字节数组
if (len > byteNum) {
len = byteNum;
}
// 判断是否出现了截半,截半的话字节对于的ASC码是小于0的值
if (bt[len] < 0) {
String subStrx = new String(bt, 0, --len);
System.out.println("subStrx==" + subStrx);
} else {
String subStrx = new String(bt, 0, len);
System.out.println("subStrx==" + subStrx);
}
}
}
处理结果:
subStrx==我AB subStrx==我ABC
# java截取字符串
# java 字符串截取的三种方法(推荐)
# java中如何截取字符串最后一位
# java 截取字符串(判断汉字)
# JAVA如何按字节截取字符串
# java中简单的截取分割字符串实例
# JAVA截取字符串的几种常用方法
# 半个
# 不被
# 转换成
# 而不是
# 都要
# 不可以
# 一个问题
# 先将
# 出现了
# 判断是否
# class
# brush
# null
# pre
# itheima
# java
# package
# ABC
# String
# byte
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在阿里云香港服务器快速搭建网站?
如何在腾讯云服务器快速搭建个人网站?
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
长沙企业网站制作哪家好,长沙水业集团官方网站?
高防服务器:AI智能防御DDoS攻击与数据安全保障
中山网站制作网页,中山新生登记系统登记流程?
Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】
如何快速搭建支持数据库操作的智能建站平台?
如何彻底删除建站之星生成的Banner?
网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?
如何选择PHP开源工具快速搭建网站?
制作企业网站建设方案,怎样建设一个公司网站?
Python结构化数据采集_字段抽取解析【教程】
如何在建站之星网店版论坛获取技术支持?
如何自定义建站之星网站的导航菜单样式?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
Laravel如何实现用户注册和登录?(Auth脚手架指南)
韩国服务器如何优化跨境访问实现高效连接?
Laravel怎么实现验证码(Captcha)功能
Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】
如何快速使用云服务器搭建个人网站?
Android 常见的图片加载框架详细介绍
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】
Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
音乐网站服务器如何优化API响应速度?
LinuxShell函数封装方法_脚本复用设计思路【教程】
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
Java类加载基本过程详细介绍
html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】
香港服务器部署网站为何提示未备案?
如何续费美橙建站之星域名及服务?
Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】
如何挑选高效建站主机与优质域名?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用
深圳网站制作的公司有哪些,dido官方网站?
如何快速搭建高效服务器建站系统?
网站页面设计需要考虑到这些问题
如何生成腾讯云建站专用兑换码?
Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南
Android自定义控件实现温度旋转按钮效果
Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】
Laravel如何使用Service Container和依赖注入?(代码示例)
教你用AI将一段旋律扩展成一首完整的曲子
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率
JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)

