1.==与equals
1.1 ==
基本类型比较:只要两个值相等,就返回true;
int a = 1; double b = 1;a ==b返回true
引用类型比较:指向同一对象时,返回true(判断保存的内存地址是否相等)
用"=="进行比较,符号两边的数据类型必须兼容 ,否则编译出错
1.2 equals
重写equals方法
idea自动生成
2.包装类和toString
2.1 toString()方法
Object类的toString方法输出当前对象的内存地址
格式:类名@内存地址经过哈希算法转化过的十六进制的值
作用:通过调用这个方法可以将java对象转换为字符串表现形式
sout(instance)和sout(instance.toString())作用相同
2.包装类
包装类主要用于基本数据类型和字符串之间的转换
包装类的toString输出字符串
3.单例模式
package com.oop.demo09;
/**
* 饿汉式单例模式
*/
public class HungerSingle {
//私有的类变量,进行实例初始化
private static HungerSingle single = new HungerSingle();
//构造方法私有化,调用这个类的人不能直接使用new来创建对象
private HungerSingle(){
}
public static HungerSingle getInstance(){
return single;
}
}
package com.oop.demo09;
//懒汉式单例模式
public class LazierSingle {
//私有化构造方法
private LazierSingle(){
}
private static LazierSingle instance = null;
public LazierSingle getInstance(){
if (instance != null){ //为null时进行初始化,否则直接返回
instance = new LazierSingle();
}
return instance;
}
}
4.main方法
5 final关键字
6 模板方法设计模式
7 枚举类
package com.test_enum;
public enum Season {
SPRING("春天","春暖花开"), //此处相当与调用有参私有构造方法
SUMMER("夏天","夏日炎炎"),
AUTUMN("秋天","秋高气爽"),
WINTER("冬天","寒风凛冽");
private final String NAME;
private final String DESC;
private Season(String NAME, String DESC) {
this.NAME = NAME;
this.DESC = DESC;
}
public void showInfo(){
System.out.println(this.NAME+":"+this.DESC);
}
public static void main(String[] args) {
Season spring = Season.SPRING;//获取了一个season对象,每次执行Season.SPRING获得的是同一对象
spring.showInfo();//枚举中的每个枚举都是单例
}
}
8 String类
StringBuffer和StringBuilder
9 日期
public class StringBufferTest {
public static void main(String[] args) throws ParseException {
StringBuffer s = new StringBuffer();
//获取系统当前时间
Date date = new Date();
System.out.println(date);
//日期格式化
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS");
String now = sdf.format(date);
System.out.println(now);
//字符串转化成Date类型
String t = "2022-05-30 23:14:40:816";
Date d = sdf.parse(t);
System.out.println(d);
}
}
System
数字