编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。
但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,
输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。
package com.test;
public class SplitString
{
public void split(String s,int len)
{
String result="";
int counter=0;
int i=0;
char temp;
while(counter<len)
{
if(i>=s.length()){
break;
}
temp=s.charAt(i);
if(Character.getNumericValue(temp)!=-1)
{
result=result+temp;
counter++;
i++;
}
else
{
result=result+temp;
counter=counter+2;
i++;
}
}
if(counter>len) //去掉多出的半个中文字节
{
if(len==1)
{
result="";
}
else{
result=result.substring(0,i-1);
}
}
System.out.println(result);
}
public SplitString()
{}
public static void main(String[] args)
{
SplitString test=new SplitString();
String a="我A掉多出BC汉DEF";
test.split(a,50);
}
}
分享到:
相关推荐
笔试面试题 一道面试题关于信息系统的问答和注意事项 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的...
《一道面试题的思考——深入理解memcpy函数的实现》 在C语言中,`memcpy`函数是一个非常重要的内存操作函数,用于将一块内存区域的数据复制到另一块内存区域。在面试中,这个问题常用来测试候选人的基础知识、逻辑...
从一道面试题深入探讨Linux下fork的运行机制 在Linux操作系统中,`fork()`系统调用是进程管理的核心功能之一,它允许一个已存在的进程创建一个新的进程,即子进程。子进程几乎完全复制父进程的状态,包括内存映像、...
java截取字符串,一道面试题。好像没有找到正确答案,今天找时间做了一个,仅供参考。本人运行过了。
"每天花5分钟的时间,弄懂一道面试题 or Js小知识"揭示了这份资源的目的,即通过每日的学习和思考,帮助用户逐步提升技能,每天进步一点点。"流年笑掷,未来可期"可能是这个学习计划的口号,鼓励持续努力,期待未来...
计算机后端-Java-Java核心基础-第21章 常用类 09. String的一道面试题.avi
综上所述,通过遵循开发规范、优化数据结构和模型、使用合适的性能优化策略以及借助自动化工具,可以有效地解决面试题中提到的数据库性能和数据安全问题。同时,开发团队和DBA需要持续关注和改进这些方面,以确保...
根据给定的信息,我们可以深入探讨这道华为面试题——“两个长数字相乘”的实现细节与背后的算法原理。 ### 题目解析 题目要求计算两个长整数相乘的结果,这里的“长整数”指的是那些无法直接用现有的数据类型(如...
在上述的面试题中,面试者需要实现一个名为add的函数,该函数可以实现连续调用并累加求和的功能。例如,add(1)(2)应该返回3,add(1, 2, 3)(10)应该返回16。解决这个问题需要对JavaScript中的函数、函数的构造方法、...
最新版Java面试宝典,精心提炼核心重点内容简化应用面试实战10秒一道,Java初级,高级,框架,底层原理,数据库,操作系统,微服务,IO,并发,JVM,容器,SpringBoot,SpringCloud,linx,面向对象,常用类,多线程,...
年薪40万的一道面试题
根据给定的信息,我们可以推断出这是一道与算法相关的面试题目。虽然提供的部分内容看起来较为混乱,但结合标题、描述及标签,我们可以尝试解析并构建一个相对完整的算法问题。 ### 题目背景 一家知名公司在招聘...
附有答案和解析:文章中每一道面试题都附带有答案和解析,读者可以参考答案和解析来检验自己的理解和掌握程度,加深对Python语言的理解和认识。 推荐对象:准备参加Python面试的程序员、Python初学者、Python爱好者...
这个问题通常出现在面试中,以评估应聘者的算法理解、逻辑思维以及对Java编程语言的掌握程度。下面我们将详细探讨这个问题及其解决方案。 首先,我们来看如何合并两个数组。在Java中,可以使用`System.arraycopy()`...
...而在XHTML 1.0 Strict中,所有标签必须闭合,`<p>`和` `也不例外,且标签名必须小写。此外,非破坏性空格(` ...在面试或实际工作中,对于HTML的精细理解和合理运用往往能体现出一个人的前端开发水平。
在IT领域,尤其是在数据处理和算法设计中,面试题经常涉及到如何高效地处理大规模数据。本题目的核心是探讨在有限内存环境下,如何求解两个大数据集合的交集。这里我们有6000万数据包(假设为数据集A)和300万数据包...
分析:这是去年google 的一道面试题。 我看到这道题目时,第一反应就是每次push 一个新元素时,将栈里所有逆序元素排序。这样栈顶元素将 是最小元素。但由于不能保证最后push 进栈的元素最先出栈,这种思路设计的...
每一道面试题都经过精心挑选,旨在考察求职者的专业知识、实践经验和问题解决能力。 此外,资源包中的面试题不仅包含了理论知识,还涉及了实际案例分析和解决方案设计,有助于求职者更好地理解网络安全在实际工作中...
每天一道面试题,再也不怕面试官 先做一下自我介绍 您好,我是xxx,毕业于xxx大学,今天面试贵公司的web前端岗位,我想从以下三个方面介绍自己。 项目经历。 接触前端工作有四年时间了,前两年在一家法律互联网公司...
一道关于项目整合的面试题