zoukankan      html  css  js  c++  java
  • 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));//年月日分秒方式输出时间
          }
      }
      
      
  • 相关阅读:
    [LeetCode] Course Schedule
    [Algorithms] Topological Sort
    [Algorithms] Graph Traversal (BFS and DFS)
    [LeetCode] One Edit Distance
    [LeetCode] Summary Ranges
    [LeetCode] Missing Ranges
    [LeetCode] Fraction to Recurring Decimal
    17.Docker之使用dockerfile创建jdk镜像
    16.Docker之使用dockerfile创建nginx镜像
    7.Docker之dockerfile指令简介
  • 原文地址:https://www.cnblogs.com/zzz1zzz/p/14248999.html
Copyright © 2011-2022 走看看