`
jianchen
  • 浏览: 343334 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

面试试题001-截取字符串

阅读更多
编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。 
package myjava;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.logging.Level;
import java.util.logging.Logger;

public class SplitString {

    public static void main(String[] args) {
        while (true) {
            BufferedReader sr = new BufferedReader(new InputStreamReader(System.in));
            String str = null;
            try {
                str = sr.readLine();          //读取输入的字符串,输入以空格分隔的字串和截取的字节数
                String[] strobject = str.split(" ");
                int number = Integer.parseInt(strobject[1]);
                str = strobject[0];
                byte[] buf = str.getBytes();
                if (buf[number - 1] < 0) {    //判断最后一个字节是否是汉字的首字节
                    number++;
                }
                String newstr = new String(buf, 0, number);
                System.out.println(newstr);
            } catch (IOException ex) {
                Logger.getLogger(SplitString.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
}
 
分享到:
评论

相关推荐

    常见的Java上机面试题.pdf

    面试题 1 的截取字符串函数是一个典型的例子,要求面试者编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。这个问题的关键是考虑中文字符和英文字符的占用字节数问题,中文字符占两...

    oracle数据工程师面试题.pdf

    * SUBSTR函数:用于截取字符串的指定部分。 * LENGTH函数:用于获取字符串的长度。 3. 存储过程和函数 * 创建存储函数:CREATE OR REPLACE FUNCTION语句用于创建一个新的存储函数。 * 函数参数:在函数中可以定义...

    常见的Java上机面试题.docx

    面试题1要求编写一个函数,用于截取字符串。该函数接收两个参数:一个是待截取的字符串,另一个是指定的字节数。函数的目标是在不超过指定字节数的前提下,尽可能完整地保留整个字符,尤其是避免截取半个汉字的情况...

    常见的Java上机面试题

    #### 面试题1:如何截取字符串 **考题背景与目的** 在Java编程面试中,基础编程技能的考察尤为关键,特别是对字符串处理能力的要求非常高。这是因为字符串在实际应用中极为常见,而如何高效地处理字符串则是程序员...

    java面试试题宝典.doc

    13. **截取字符串**: 要确保汉字不被截断,需要检查字符边界,确保在字节截取时不跨越多字节字符。 14. **打印昨天的当前时刻**: 使用`java.util.Calendar`或`java.time`包中的类可以获取昨天的日期并格式化为...

    南京各大公司java面试题集锦

    在Java中,substring()和split()方法常用于截取字符串。substring()用于截取子字符串,而split()则是通过正则表达式分割字符串。 11. XML格式和解析技术: XML(可扩展标记语言)的格式包括DTD和Schema两种形式,...

    PHP面试试题大全

    - 使用`strrev()`函数可以实现字符串的翻转。 13. **优化访问量方法** - 使用负载均衡,缓存技术,数据库优化,CDN内容分发网络等。 14. **获取IP地址** - `$_SERVER['REMOTE_ADDR']`获取客户端IP,`$_SERVER['...

    PHP面试题.rar

    - 字符串操作:连接、查找、替换、截取、大小写转换。 - 正则表达式:用于模式匹配和数据提取。 6. **文件与目录操作**: - 文件读写:fopen、fread、fwrite、fclose。 - 目录操作:mkdir、rmdir、opendir、...

    去哪儿网笔试题汇总

    它首先检查输入是否为空,然后使用`substr`函数截取字符串中的每个路径片段。如果遇到`".."`,则使用`pop_back`从`vec_str`中移除最后一个元素。最后,通过遍历`vec_str`并拼接元素,得到绝对路径,并将结果复制到`...

    浪潮面试题

    - 字符串截取需要考虑到中文字符的编码问题。 - 为了保证不截断中文字符,可以逐个字节检查并确保每次截取都是完整的字符。 - 实现时可以考虑使用`String.getBytes()`获取字节序列,并使用循环逐字节检查。 ####...

    中软笔试题(答案仅做参考)

    中软笔试题(答案仅做参考)是中软公司面试题目汇总,涵盖了 Java 编程、多线程、字符串截取、unix/linux 命令、数据库知识等多个方面的知识点。下面对每个知识点进行详细的解释和分析: 1. 采用单例模式,把文件 ...

    java面试题大全(2012版)

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    2016PHP面试题

    PHP中,单引号和双引号所包围的字符串有什么区别? - **单引号**:不会解析变量,速度快。 - **双引号**:会解析变量,可能会稍慢一些。 #### 12. mysql_connect()与@mysql_connect()的区别是: - **@mysql_connect...

    php面试题

    - `echo`用于输出一个或多个字符串。 - `print`功能与`echo`相同,但返回值总是1,通常用于条件判断。 - `print_r()`用于打印数组或其他复杂数据类型的内部结构。 3. **模板分离** 指的是将HTML和PHP逻辑分离...

    上海交通银行JAVA笔试编程题

    字符串截取在Java中主要通过`substring()`方法实现。这个方法允许我们指定起始和结束位置,返回一个新的字符串。在处理中文字符串时,特别需要注意的是,由于中文字符通常占两个字节,因此截取时不能按照单个字节...

    童程童美2020Python笔试题A卷.doc

    5. 字符串操作:Python 的字符串可以使用 slice 操作符来截取子串,例如 `name[2:-1]` 将截取字符串 `name` 从第三个字符到倒数第二个字符。 6. 元组定义:Python 的元组可以使用小括号定义,例如 `(1)` 或 `(1, 2,...

    2014年Java最全面试题以及答案.

    14. 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 要正确处理汉字等多字节字符,可以使用String类的getBytes方法配合指定的字符编码,例如UTF-8或GBK来处理字符串的字节表示。 ...

    高新兴 最新秋招笔试试题.docx

    7. 截取字符串:要获取`str`中的`hts`,可以使用`substring(5)`或`substr(5)`,因为`substring()`不接受第二个参数表示截取长度,所以`substr(4, 7)`和`Str.substring(4, 6)`是错误的。 8. `JavaScript`中的`call`...

    5.0_S1_Java内部测试机试题(带答案)

    5. **字符串处理**:String类在Java中非常常用,试题可能会测试字符串的创建、比较、截取、替换、拼接等操作。 6. **数组与泛型**:数组是存储同类型数据的基本结构,泛型则为集合提供了类型安全的保证。试题可能...

Global site tag (gtag.js) - Google Analytics