2021年7月30日

讲师:王博

昨天回顾

static关键字

修饰成员变量:

类名.属性

内存里面在数据区,和堆还有栈没有关系,也就意味着和对象没有关系

修饰成员方法

类名.方法

内存里面在方法区,和对象也没有关系

静态的成员方法,不能使用非静态的成员属性和成员方法

修饰代码块:

静态代码块

static{}

静态代码块早有构造方法的执行,早于对象的创建

异常

Throwable

error

exception

异常的处理:

一种捕捉 一种抛出

try{

可能出异常的代码

}catch(异常的对象){

异常的信息

}

 

throw抛的动作,后面跟的是异常对象

throws在方法的声明出,告诉调用这,如果你在调用这个方法的时候,有可能发生的异常。

String

==:比较地址和内容

比较的是地址,在栈区内容一样,地址就一样

八大基本数据类型和String 都是在栈区

equals

比较内容

开发中用equals方法

今日内容:

·String类下面的方法

String类下面的方法

获取字符串的长度 int length();

获取特定位置的字符 char charAt(int index);

获取特定字符串的位置 int indexOf(String str);

获取最后一个字符的位置 int lastIndexOf(int ch);

package com.liujinghe.a_string;

public class Demo1 {
    public static void main(String[] args) {
        String str = "多复习会有惊喜";
        System.out.println(str.length());//7
        System.out.println(str.charAt(3));//

        //特定字符第一次出现的位置  索引
        System.out.println("小明❤小红".indexOf(''));
        System.out.println("中华人民共和国万岁".indexOf("人民"));
    }
}

是否以指定的字符结束 boolean endsWith(String str);

是否长度为0  boolean isEmpty();

是否包含指定的字符串 boolean contains(String str);

忽略大小写是否相等  boolean equalsIgnoreCase(String otherString);

package com.liujinghe.a_string;

public class Demo2 {
    public static void main(String[] args) {
        //以字符串的某一部分为结尾的时候,才返回true
        System.out.println("demo1.java".endsWith("java"));
        System.out.println("".isEmpty());//true  判断字符串是否为空
        String str = "java2019";
        System.out.println(str.contains("a2"));//true
        System.out.println("abc".equals("aBc"));//false
        System.out.println("abc".equalsIgnoreCase("aBc"));//true

    }
}

将字符数组转为字符串的数组

Stringcahr [] chs

String (char [] ,int offset,int count)

valueOf(char [] chs);

将字符串转为字符数组

char [] toCharArray()

package com.liujinghe.a_string;

public class Demo3 {
    public static void main(String[] args) {
        char [] chars = {'a','b','c','d','e'};
        String s = new String(chars);
        System.out.println(s);
        //偏移1个,取2 偏移量,取的个数
        String s1 = new String(chars, 1, 2);
        System.out.println(s1);
        //valueOf()将字符数组转为字符串
        String s2 = String.valueOf(chars);
        System.out.println(s2);
        char[] chars1 = "这个是字符串".toCharArray();
        System.out.println(chars1);
        for (int i = 0; i < chars1.length; i++) {
            System.out.print(chars1[i]);
        }
    }
}

替换 String replace(char oldChar,char newChar);

切割字符串 String [] split(String regx);

截取字符串 String subString(int beginIndex);

String subString(int beginIndex,int endIndex);

将小写的转为大写的字母 String toUpperCase();

将大写的转为小写的字母 String toLowerCase();

去首尾空格 String trim();

package com.liujinghe.a_string;

public class Demo4 {
    public static void main(String[] args) {
        System.out.println("abcdefgh".replace('a','A'));
        String str = "呵呵哒,么么哒,嘻嘻哒";
        //碰到,就切割
        String[] split = str.split("");
        for (int i = 0; i < split.length; i++) {
            System.out.println(split[i]);
        }
        //字符串的截取    beginIndex 包含截取,前闭后开,要头不要尾
        System.out.println("0123456".substring(2));
        System.out.println("0123456".substring(2,4));
        System.out.println("abcd".toUpperCase());
        System.out.println("ABCD".toLowerCase());
        System.out.println("  he  he  ".trim());
    }
}

 

StringBuffer

package com.liujinghe.a_string;

public class Demo6 {
    public static void main(String[] args) {
        StringBuffer stringBuffer = new StringBuffer();
        stringBuffer.append("小明");
        stringBuffer.append("小红");
        System.out.println(stringBuffer);
        int capacity = stringBuffer.capacity();
        System.out.println(capacity);
        System.out.println(stringBuffer.reverse());
        /**
         * String 值不可改变
         * StringBuffer 值是可变的,线程安全的
         */
    }
}

 

length

charAt

indexOf

lastIndexOf

endswith

isEmpty

contains

equalsIgnoreCase

valueOf

toCharArray

replace

split

subString

toUpper

toLower

trim

 

posted @ 2021-07-30 20:40  张三疯321  阅读(46)  评论(0编辑  收藏  举报