本文主要用于记录自己在编写mapreduce程序时常用的一些方法,后期会不断更新,用于自己复习和给新手一些帮助。

字符串操作

        String str = "  12345";
//      字符串中是否包含某子字符串System.out.println(str.contains("123"));//      返回索引位置System.out.println(str.indexOf("1"));//      截取字符串,从索引0开始到索引3(包括前不包括后)   只有一个参数时表示从该索引一直截取到最后String str2 = str.substring(0, 3);System.out.println(str2);//      截取第一个逗号以前的字符串String str1 = "1,2,3,4,5";String substring = str1.substring(0, str1.indexOf(","));System.out.println(substring);//      字符串替换System.out.println(str.replace("123", "321"));//      trim()去除字符串两边的空格  ltrim()去除左边的空格   rtrim()去除右边的空格System.out.println(str.trim());//      ==比较的是2个字符串是否指向同一地址,equals()比较的是实际字符串,比如大小写,长度等

字符串数组操作

//      将字符串数组转化成字符串     import org.apache.commons.lang.StringUtils;String[] array = {"abc", "123", "45"}; System.out.println(StringUtils.join(array,','));//字符串按,或;分割成数组String str = "abc,def;gh,ij;k;lm,no,p;qr,st";String[] temp = str.split("[,;]");
//      Arrays.toString()方法,数组输出为字符串 格式[abc, def, gh, ij, k, lm, no, p, qr, st]System.out.println(Arrays.toString(temp));//      字符串数组的截取String[] a = {"a","b","c","d","e","f","g","h","i"};//包括前不包括后String[] b = Arrays.copyOfRange(a, 0, 5);System.out.println(StringUtils.join(b,","));

StringBuilder操作

//      String 是不可变的对象,经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响
//      StringBuilder线程不安全的(用在字符串缓冲区被单个线程使用的时候)  优先考虑使用,速度快
//      StringBuffer线程安全的(用于多线程)
//      StringBuilder sb = new StringBuilder();
//      在最后追加
//      sb.append(1);
//      sb.append(2);
//      在索引位置前插入
//      sb.insert(1, "a");
//      删除指定索引位置的字符   删除最后一个字符
//      sb.deleteCharAt(sb.length()-1);
//      删除指定索引的字符串,包括前不包括后
//      sb.delete(0, 1);
//      System.out.println(sb.toString());

输出文件中文乱码问题

mapreduce处理的文字格式都是utf-8,如果输入的正文编码格式是gbk,可以自定义方法,将其转为utf-8// 处理gbk格式的输入文件 Text text1 = transformTextToUTF8(value, "gbk");public static Text transformTextToUTF8(Text text, String encoding) {String value = null;try {value = new String(text.getBytes(), 0, text.getLength(), encoding);} catch (UnsupportedEncodingException e) {e.printStackTrace();}return new Text(value);}

转载于:https://www.cnblogs.com/52mm/p/p14.html

MapReduce编程中常用的字符操作相关推荐

  1. python编程中常用的12种基础知识总结

    python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序.去重,字典排序,字典.列表.字符串互转,时间对象操作,命令行参数解析(getopt),print 格式化输出,进 ...

  2. 简单的计算机程序代码,优秀程序员通过简单代码,窥探电脑编程中强大的数组操作功能...

    优秀程序员通过简单代码,窥探电脑编程中强大的数组操作功能.编程语言中,数组是一个非常重要的概念,也是一种很常用的类型.本文中通过javascript语言的代码实例,展现编程中数组的魅力.在javasc ...

  3. python编程的基本方法有哪些_Python编程中常用的基础知识有哪些?

    今天小编要跟大家分享的文章是关于Python编程中常用的基础知识有哪些?正在从事Python相关工作的小伙伴们,来和小编一起看一看本篇文章,希望本篇文章能够对大家有所帮助. 1.正则表达式替换 目标: ...

  4. java s.charat_Java中s.charAt(index)用于提取字符串s中的特定字符操作

    charAt(int index)方法是一个能够用来检索特定索引下的字符的String实例的方法. charAt()方法返回指定索引位置的char值.索引范围为0~length()-1. 如: str ...

  5. python编程基础知识点总结_【转载】Python编程中常用的12种基础知识总结

    Python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序.去重,字典排序,字典.列表.字符串互转,时间对象操作,命令行参数解析(getopt),print 格式化输出,进 ...

  6. Python 编程中常用的12种基础知识总结

    Python 编程中常用的12 种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序.去重,字典排序,字典.列表.字符串互转,时间对象操作,命令行参数解析(getopt),print 格式化输出 ...

  7. C++ 编程中常用的英文单词(首字母是A、B、C开头)

    简介: 学习编程不一定需要英语水平很高,能记住认识一些常用的英文单词也可以,有看不明白的文档资料也可以使用翻译工具,编写代码时大部分好用的IDE都是有代码提示的.本文主要介绍C++语言编程中常用的英语 ...

  8. JS中常用的事件操作

    JS中常用的事件操作 前言 一.点击事件(导航栏内容切换功能) 二.移入移出事件(导航栏菜单下拉功能) 三.失去焦点事件(表单检验功能) 四.鼠标事件(鼠标跟随功能) 五.键盘事件(打飞机案例) 总结 ...

  9. C++ 编程中常用的英文单词(首字母是O、P、R开头)

    学习编程不一定需要英语水平很高,能记住认识一些常用的英文单词也可以,有看不明白的文档资料也可以使用翻译工具,编写代码时大部分好用的IDE都是有代码提示的.本文主要介绍C++语言编程中常用的英语单词. ...

最新文章

  1. 201521123091 《Java程序设计》第3周学习总结
  2. Android 使用ORMLite 操作数据库
  3. spring boot integrated mybatis three ways!--转
  4. php url传递参数_python+Requests接口自动化测试之传递 URL 参数
  5. java 树 右键菜单_jQuery实现自定义右键菜单的树状菜单效果
  6. javascript学习系列(22):数组中的reduceRight法
  7. 一个网卡绑定多个IP
  8. Win10系统怎么锁定IE浏览器主页
  9. 华为交换机VLAN的配置和实施
  10. jpa 连接多个mysql 数据库_SpringBoot 连接多个数据库
  11. Weblogic Server 的下载,安装配置与部署
  12. 【多图】Google工程师解析Android系统架构--what is android(转载)
  13. 分享互联网公司经验一
  14. iOS App打包上架超详细流程1
  15. 思科交换机配置试题_思科交换机基本配置命令全集
  16. QT-C++ 注册机软件,生成机器码和注册码,支持授权时间
  17. Abp vNext swagger注释
  18. URL里面携带了#是什么意思
  19. 上海内推 | 微软亚洲研究院上海人工智能组招聘深度学习研究实习生
  20. mysql查询删除的数据历史记录_查询数据库各种历史记录

热门文章

  1. Struts2的工作原理及工作流程
  2. JS与APP原生控件交互
  3. RabbitMQ 安装与简单使用
  4. android面试题精选
  5. Android 用户界面---样式和主题(Styles and Themes)(二)
  6. Hadoop localhost: frankxulei@localhost: Permission denied (publickey,password)
  7. 手把手0基础项目实战(一)——教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)...
  8. 第 11 章 Paragraphs
  9. 浅谈面向对象的javascript几个特性
  10. LAMP架构,纯文本作品