常用类

来源:互联网 发布:英制锥螺纹编程实例 编辑:程序博客网 时间:2024/05/16 07:07

String

  • String在内存中的表现
    • 字符串常量池pool
    • 特点:预先把对象放入池中
    • String对象内容不可变(做任何操作只是给一个新的对象)
  • 分类

都是与字符串数组相关

 * char[] charArray = str0.CharArray();//字符串转换数组 * char c = str0.charAt(1); * int index = str0.indexOf("j")//返回字符的下标 * int index = str0.indexOf("1");//返回一个字符在String首次出现的位子 * int index = str0.lastindexOf("1")//最后出现的位子 * int length = str0.length();//属性 * boolean flag = str0.contains("ell");//返回一个字符串是否包涵另一个字符串 * Stringsubstring = str0.substring (1,4);根据下标截取字符串,特点是前闭后开(包含1,不含4) * Stringsubstring = str0.substring (4);//从下标截取到最后 * String newa = str0.replace('1','s');//替换 * String newa = str0.replace("11","ss");//替换 * flag = str0.starsWith("he")//判断一个字符是否以某个字符串开头(t or f) * flag = str0.endsWhith("lo")//判断一个字符是否以某个字符串结尾(t or f)

与英文相关

* String upCase = str0.toupperCase();//转换全大写* String lowCase = str0.toupperCase();//转换全小写* boolean flag = "Hello".equalsIgnoreCase("hello")//忽略大小写比较相等* "hello".compareTo("hello")使用字典顺序,字符比较,输出Ascii码,如字符一样在比长度,长度不一样,输出长度* "hello".compareToIgnoreCase("hello")//忽略大小写比较

重点

  • 对任意一个字符串做非空判断,都要做两个判断(空与空串)比较
    • if(str0 != null && !str0.equals(” “)){ //位置不能换,利用&&的短路
    • System.out.print(“字符串非空”)
    • }else{
    • System.out.print(“字符串无效”)
    • }
  • trim方法//去掉字符串前后空格
    • str = ” he llo “;
    • System.out.print(str0.trim());
  • matcher(模糊符号)
    • 正则表达式的匹配
    • regex一个字符串模板,规定了字符串的样式
    • 任何一个字符串都是正则表达式
    • 基本符号
      • []{}()*+?
      • []一个代表一个字符,
      • {}代表正则表达式反复出现的次数
      • ()和|配合,表示可选,(|),不限制字符(123|abs|a-)
      • {m,n}至少m次,至多n次。 {m,}至少出现m次。 {m}只能出现m次。
      • *表示任意次
      • +表示至少一次
      • ?表示0-1次
  • String 的常用方法
  • 校验方式:正则表达式
  • 缺点
  • 表示String的类
    • String Boffer
    • String Buller

split()
对字符串进行拆分

传的是分隔符

  • String message = “J122-123-456”
  • String[] results = message.split(“-“);
  • System.out.print(resulits[0]);

StringBuffer

  • 内容可变的字符串类型,方法主要集中在改变StringBuffer对象的内容上
  • 需要NEW出来

    • StringBuffer sb = new StringBuffer(“hello”);
    • sb.append(“world”);
    • 适用于安全的多线程的,效率低
  • 与Buffer功能一样,单线程,不安全,但是效率高。
    StringBuilder

在大量做字符串拼接的时候,用这两个

凡是安全多线程的效率一定慢
凡是不安全的单线程的效率一定快

包装类:专门为基本数据类型设计

  • 作用:在基本和引用之间充当桥梁
  • 首字母大写,唯有int-intege,char-character
  • 包装类——基本类型——String互转
  • 查doc文档
  • 方法
    • 基本转包装类,调用包装类的带参构造
      • int a = 10;
      • Inteager i = new Inteager(a);
    • 基本转包装类, 自动封箱
      • Inteagaer i = a;
    • 包装类转基本,自动拆箱
      • Inteager i = 100;
      • int a = i;
    • 包装类转基本,调用包装类的value()
      • int a = i.intvalue();
    • 包装类转String,,调用包装类的tostring()
      • Intager i = 100;
      • String a = i.tostring();
      • atr = i +”“;//其本质还是调用了Inteager对象的toString方法
    • String转包装类,调用包装类的带String参数的构造
      • String str = 100;
      • Inteager i = new Inteager(str);
    • 基本转String,用包装类的带参tostring()方法
      • int i = 10;
      • String str = Inteager.toString(i);
    • String转基本,调用包装类的方法
      • String str = “250”;
      • int i = Inteager.parseInt(atr);
0 0
原创粉丝点击