java实训day3_String类

day3学习内容

字符串

  • String类代表字符串,是一个引用类型,是唯一不需要new关键字的引用类型.默认值为null.
//String类两种的创建方式
String str = new String();
String str = "david";//常用这种方法定义并初始化,效率高,专门做出的优化,写代码的时候接近基本类型.

  • String类的内存模型(两种创建方式区别的本质)

    • java中==比较的是栈中的值
    • 对于字符串来说栈里的值没有意义 用equals方法比较堆中值
    • 使用优化写法,字符串存入常量池
      • 常量池中放入新数据先看有没有之前创建过数据,创建过就不再创建.(节约空间)
  • **String字符串是常量,创建后不能发生改变 **,常量是根据字符串的存储方式所说的,首先先在堆中创建一个字符串,让栈中的String存放堆中字符串地址的引用.更改String内容实际上是更改了栈中存放的地址引用

  • String类是最终类,不能被继承

  • String类常用方法

    • charArt() 截取一个字符,括号内放数字,从零开数

    • lengrh() 返回字符串中的长度

    • getBytes 将字符串变成一个btye数组

    • equals() 区分大小写比较字符串是否相等

      equalslgnoreCase() 不区分大小写比较字符串是否相等

    • startWith() 判断字符串是不是以特定的字符开头

      endWith() 判断字符串是不是特定字符结尾

    • concat() 连接字符串.

      +: 一般用+ 来链接,加号的使用方式看两边数据类型,字符串类型和其他类型做运算,运算要都转成字符串类型

    • subsring() 输入两个参数时,包前不包后[ )截取字符串

    • indexOf() 查找字符或字符串第一次出现的下标

    • lastindexOf() 从后往前查找字符或字符串第一次出现的下标

    • compareTo() 按字顺序比较两字符串的大小

      comepareTolgonreCase()

    • repalce() 替换

    • split() 按指定字符切割

  • StringBuffer 和 StringBuilder

    • 解决空间浪费 , String频繁的赋值修改会开辟很多空间造成空间浪费
    • 工作原理相同, StringBuffer线程安全,StringBUilder非线程安全(单线程)
    • 方法:
      • append() 在原字符串后拼接字符
      • insert() 在原字符前拼接字符或在指定位置添加字符(也是按数组下标数)
      • toString() 转化为字符串
      • reverse() 反转字符

Date类

  • Date类在java.util.Date中.

    Date now = new Date();//获取当前时间
    Date now = new Date(long millisec)//参数为1970.1.1起的毫秒数
    
    

tips: java中初始时间是1970年1月1日

  • 使用SimpleDateFormat类对日期类型进行格式化,生成字符串

    import java.text.SimpleDateFormat;//导入SimpleDateFormat所在的包
    import java.util.Date;//导入Date所在的包
    public class DateFunction {
        public static void main(String [] args){
            Date now = new Date();
            System.out.println(now);
            SimpleDateFormat f = new SimpleDateFormat("yyyy年MM月dd日HH点mm分ss秒");
            System.out.println(f.format(now));//年月日分秒方式输出时间
        }
    }
    
    
posted @ 2021-01-07 22:01  zzz2077  阅读(51)  评论(0编辑  收藏  举报