• day09_String类 和 static关键字


    今日内容

    •   String类
    •   Static关键字

    String类

      三种构造方法:

        public String() : 创建一个空白的字符串,不包含任何内容   

    格式:
    String str =  String()

        public String(char[] array):  根据字符数组的内容,来创建对应的字符串

        public String(byte[] array):  根据字节数组内容,来创建对应的字符串

      一种直接创建:

        String str = “abc”//右边直接用双引号

           如果用双引号包裹,一定是在堆中的字符串常量池中,也是一个对象,String str对应的地址值是堆中的字符串常量池中的对象,常量池中的对象的地址值指向byte[]字节组 

        备注:直接写上双引号,系统也会认定字符串对象。

      1.对于引用类型来说,==进行的是地址值比较

      2.对于基本数据类型来说,==比较的是数值

      3.双引号直接写的字符串在常量池当中,new的string形式不在常量池当中

    常用方法

      判断功能的方法

        public booean equals(Object anObject): 将此字符串与指定对象进行比较

        public boolean equalslngoreCase(String anotherString):将此范围的

      获取功能

        public int length(): 返回字符串的长度

        public String concat(String str): 将指定的字符串连接到该字符串的末尾

        public char charAt(int index): 返回指定索引处的char值

        public int indexOf(String str): 返回指定的子字符串第一次出现在该字符串内的索引值,如果找到返回子字符串第一个字符所在的索引值,如果没有找到则返回

        public String substring(int beginIndex): 返回一个子字符串,从beginlndex开始截取该字符串到该字符串的末尾

        public String substring(int beginIndex,int endIndex): 返回一个子字符串,从beginIndex 到endIndex区间截取该字符串,包含beginIndex索引处的值,不包含endIndex索引处的值。左闭右开。

      转换功能

        public char[] toCharArray(): 将此字符串转换成新的字符数组

        public byte[] getBytes(): 使用平台默认的字符集将该字符串编码转换成新的字节数组。

        public String replace(CharSequence oldString,CharSequence newString): 将所有出现的老的字符串换成新的字符串,返回替换掉之后的新的字符串

        备注:CharSequence是一个接口,也是一种引用数据类型,意思就是可以接收字符串参数数据类型

    Static关键字 

      static关键字的使用,它可以修饰成员变量和成员方法。被修饰的成员是【属于类】的,而不单单是属于某个对象的也就是,既然属于类的,那就不需要通过创建对象来调用类中的成员信息。

     定义和使用格式

      静态类变量

         当成员变量被static修饰,该变量就称为【类变量】。该类的每个对象都【共享】同一个类变量的值。任何对象都可以更改类变量的值。类变量也可以不通过创建类对象的方式进行操作,通过类也可以进行操作。

        定义格式:

    static 数据类型  变量名
    static int Xxxx;

      静态类方法:

        当成员方法一旦被static关键字修饰时,该方法称为【类方法】。类方法一般是通过类名直接调用,而不需要单独创建对象来调用。调用方式很简单。习惯称为【静态方法】。可以通过类直接调用,所以不用封装

        定义格式:

    修饰符        static  返回值类型   方法名(参数列表){
                  //方法体内容
                }

    例如:
    public static String Xxxx(int[] arr){
            //方法体内容就是如何
            //......
            //必须有返回语句  return  返回值;
    }

       静态方法调用的注意事项

        静态方法可以直接访问类变量和静态方法

        静态方法不能直接访问普通的成员变量和成员方法。反之,成员方法可以【直接访问】类变量和静态方法

        静态方法中不能使用this关键字。

      调用格式

        静态方法建议通过类来调用,但是也可以通过对象来调用,会出现警告信息(不建议使用对象来调用)

      格式

        //访问类变量
        类名.类变量名;
        //访问静态方法
        类名.静态方法名(参数);

      备注:这些不能直接访问的成员信息,可以间接的通过实例化对象来调用

      static修饰的内容

        是随着类的加载而加载而且只会加载一次

        存储于一块固定的内存区域(在静态域),所以,可以被类直接调用。

        他优先于对象存在,所以可以被类的所有对象所共享。

      静态代码块

        静态代码块:定义在成员变量位置,被static修饰的代码块{}

        位置:类中方法外

        执行:随着类的加载而加载而且只会加载而且只会执行一次,优先于main方法和构造方法执行

      格式:   

    public class ClassName{
        static{
            //执行语句  多条执行语句。
            //.....
        }
     public static void main(String[] args){
         //static {}在方法内是错误的   
     }  
    }

      备注:static 可以修饰成员方法,成员变量,代码块。在使用过程中,如果你不想在不创建对象的情况下,去调用成员变量,成员方法,可以定义乘静态的。对应于静态代码块来说,通常作用是对类中的成员变量进行初始化。

  • 相关阅读:
    MyBatis java and MySql local variables
    FileReader 基本介绍
    MyBatis插入多条
    mysql批量更新
    转载:mybatis自动生成
    Redis Replication
    Redis 持久化
    Python 调用 Redis API
    Redis 数据类型
    Redis 单节点安装
  • 原文地址:https://www.cnblogs.com/rxqq/p/14008320.html
Copyright © 2020-2023  润新知