美文网首页
8.13 集训第十三天 【】

8.13 集训第十三天 【】

作者: 草莓灵啾啾 | 来源:发表于2019-08-13 23:00 被阅读0次

    学习内容

    1不可变字符串
    String

    • 1.不可变的字符串 一旦创建 内容不能改变
      1. 用“==”比较两个对象是否相同(地址)
        “equals”比较内容是否相同
    • 3.字符串的创建
      a.String str="";
      b.String str =new String();构造方法 没意义
      c.使用字节数组 创建一个字符串/一串数字
    byte[] name={'a','b','c'};
    String str=new String(name);
    System.out.println(str);
    
    byte[] name2 = {97,98,99};
    String str = new String(name2);
    System.out.println(str);
    

    e.使用字节数组的一部分 创建一个字符串

    String str=new String(name,0,2);
    System.out.println(str);
    
    • 字符串有哪些方法
      1.获取字符串中的一个字符 chatAt
    char c=h.charAt();
    System.out.println(c);
    

    2.比较两个字符串的大小 compareTo (0:相同, >0:大于,<0:小于)

    int result=str1.compareTo(str2);
    System.out.println(result);
    

    3.两个字符串的连接 concat

    String nStr=str.concat(str2);
    System.out.println(nStr);
    

    4.判断一个字符串是否包含另一个字符串 contains

    boolean r="hello".contains("lle");
    System.out.println(r);
    

    5.判断是否以某个字符串结尾/开 endsWith/startsWith

    String url="http://www.baidu.com";
    if(url.endsWith(".com")){
    System.out.println("网址");
    }
    if(url.startsWith("http")){
    System.out.println("http协议");
        }
    if(url.startsWith("www",7)){
    System.out.println("万维网");
        }
    

    6.两个字符串进行比较 equals

    if ("abc".equals("ABC")){
    System.out.println("相同");
        }
    else{
    System.out.println("不相同");
        }
    

    7.判断一个字符串在另一个字符串里面的位置(不存在返回值为-1) indexOf

    String i1="hello Java";
    int index=i1.indexOf("Javee");
    System.out.println(index);
    

    8.获取子字符串 substring
    9.将字符串转化为字符数组 toCharArray
    10.将所有字符转化为小写/大写toLowerCase/toUpperCase
    11.将字符串其那面和后面的空格字符删除 trim()

    2可变字符串
    StringBuffer 线程安全 效率不高
    StringBuilder 线程不安全的 效率更高
    需要了解的方法:insert append delete replace

    // 创建的同时先准备好6个字符的空间
    StringBuilder sb = new StringBuilder(6);
    
    // append 在末尾追加
    sb.append("I");
    sb.append(" Love");
    sb.append(" Android");
    System.out.println(sb);
    
    // insert 插入数据
    sb.insert(2, "also ");
    System.out.println(sb);
    
    // replace 替换
    // start  end  string
    int start = sb.indexOf("Android");
    int end = start + "Android".length();
    sb.replace(start,end,"you!!!");
    System.out.println(sb);
    
    // reverse 反转
    sb.reverse();
    System.out.println(sb)
    

    \color{red}{*}如何判断是设计普通类、抽象类还是接口呢?

    抽象类 普通类 接口
    是否需要添加成员变量? 需要 ✔️ ✔️
    不需要 ✔️
    添加的方法是不是必须要实现? 必须 ✔️ ✔️
    不需要 ✔️ ✔️
    需要提供模板还是通信的工具? 模板 ✔️
    通信(数据传递) ✔️

    心得体会

    暂时没有

    相关文章

      网友评论

          本文标题:8.13 集训第十三天 【】

          本文链接:https://www.haomeiwen.com/subject/ivrvjctx.html