黑马程序员技术交流社区

标题: String类总结 [打印本页]

作者: xfbyxq    时间: 2016-7-6 21:31
标题: String类总结
2:String类的概述和使用(掌握)
(1)多个字符组成的一串数据。
          其实它可以和字符数组进行相互转换。
(2)构造方法:
  A:public String()
  B:public String(byte[] bytes)
  C:public String(byte[] bytes,int offset,int length)
  D:public String(char[] value)
  E:public String(char[] value,int offset,int count)
  F:public String(String original)
  下面的这一个虽然不是构造方法,但是结果也是一个字符串对象
  G:String s = "hello";
(3)字符串的特点
  A:字符串一旦被赋值,就不能改变。
   注意:这里指的是字符串的内容不能改变,而不是引用不能改变。
  B:字面值作为字符串对象和通过构造方法创建对象的不同
   String s = new String("hello");和String s = "hello"的区别?
(4)字符串的面试题(看程序写结果)
  A:==和equals()
   String s1 = new String("hello");
   String s2 = new String("hello");
   System.out.println(s1 == s2);// false
   System.out.println(s1.equals(s2));// true

   String s3 = new String("hello");
   String s4 = "hello";
   System.out.println(s3 == s4);// false
   System.out.println(s3.equals(s4));// true

   String s5 = "hello";
   String s6 = "hello";
   System.out.println(s5 == s6);// true
   System.out.println(s5.equals(s6));// true
  B:字符串的拼接
   String s1 = "hello";
   String s2 = "world";
   String s3 = "helloworld";
   System.out.println(s3 == s1 + s2);// false
   System.out.println(s3.equals((s1 + s2)));// true

   System.out.println(s3 == "hello" + "world");// false 这个我们错了,应该是true
   System.out.println(s3.equals("hello" + "world"));// true
(5)字符串的功能(自己补齐方法中文意思)
  A:判断功能
   boolean equals(Object obj)
   boolean equalsIgnoreCase(String str)
   boolean contains(String str) //是否包含指定字符串
   boolean startsWith(String str) //判断字符串是否以指定字符串开头
   boolean endsWith(String str) //判断字符串是否以指定字符串结尾
   boolean isEmpty() //判断字符串是否为空
   boolean matches(String regex)//正则
  B:获取功能
   int length() //获取字符串长度
   char charAt(int index) //获取指定索引位置的字符
   int indexOf(int ch) //查找字符出现的位置
   int indexOf(String str) //查找字符串出现的位置
   int indexOf(int ch,int fromIndex) //从指定起始位置查找字符
   int indexOf(String str,int fromIndex) 从指定起始位置查找字符串
   String substring(int start) //获取从指定位置开始到结尾的字符串
   String substring(int start,int end) //获取从指定位置开始到指定位置之间的字符串
  C:转换功能
   byte[] getBytes() //把一个字符串转成字节数组
   char[] toCharArray() //把字符串转成cha数组
   static String valueOf(char[] chs) //把字符数组转成字符串
   static String valueOf(int i) //把整数转成字符串
   String toLowerCase() //转成大定
   String toUpperCase() //转成小定
   String concat(String str) //串联指定字符串
  D:其他功能
   a:替换功能
    String replace(char old,char new)
    String replace(String old,String new)
   b:去空格功能
    String trim()
   c:按字典比较功能
    int compareTo(String str)
    int compareToIgnoreCase(String str)
作者: 徐鑫_xx    时间: 2016-7-6 22:05
写的好详细,拿来当笔记使用
作者: scz63    时间: 2016-7-6 23:00
谢谢分享,就当是笔记用了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2