java学习日记(14-16)

########## day14 #####################
ctrl+t 展示类继承树
/**
* @author 文档注释
*/
javadoc.exe 生成java文档
jar.exe 压缩类为jar包
exclipse 中的 export

1环境变量配置
JAVA_HOME jdk目录
path中 %JAVA_HOME%/bin

2使用第三方jar包
cmd
classpath 告知jvm,去哪个路径下找到可以运行的class
set classpath=路径 //临时设置
eclipse中
新建lib文件夹,把jar放入其中
右键build path->add

java中引用数据类型都是在堆分配空间,变量名只是地址
抽象类作为函数参数,可以实现多态
抽象类作为方法的返回值
接口同抽象类

###########     day15 String            ################
public boolean equals(Object obj)
object类中比较地址
1obj是否为自己
2是否为null
3判断是否同一类别 instanceof
4重写需要对Object向下转型
5进行比较

输出语句中,打印对象,默认调用对象的toString()方法
public String toString()
Object类打印地址

# String 类
字符串本身是对象,常量,不会改变
引用变量指向地址改变
String s1 = "abc";
String s2 = "abc";
s1 == s2 true 在常量池中

String s3 = new String("abc") 在堆中
s1 == s3 false

String s4 = new String("abc")
s3 == s4   false 在堆中分配的字符串不能有相同的地址

GBK 汉字两个负字节
str.contains(String substr) 判断str中是否包含substr
str.indexof(String a) 查找a在str中第一次出现的位置

str.charAt(index) 查找index位置的字符

与正则有关的方法
1str.matches("规则") 匹配
2str.split("规则")
3str.replaceALl("规则")
\. p匹配点

# StringBuffer

buffer.append(value)
buffer.delete(int start, int end) java中区间包含头不包含结尾
buffer.insert(int offset, value)
buffer.replace(int start, int end, String str)
buffer.reverse()

# StringBuilder
线程不安全,效率比StringBuffer更快 recommend

################### day16 日期类 ####################
long cur = System.currentTimeMillis() 当前毫秒值 相对于1970年0101
#Date类
Date date = new Date(); 获取系统的时间和日期,
Date date = new Date(long msec); 把毫秒值msec转换成日期

date.getTime() 日期转毫秒
date.setTime(long) 毫秒值转日期
CST china standard time 

# SimpleDateFormat  java.Text 包中
模式可上网搜索
格式化日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
// 也可写成yyyy/MM/dd HH:mm:ss 中间些什么无所谓,yyyy dd 等不能写错
String date = sdf.format(new Date());

字符串转Date对象
1创建SimpleDateFormat的对象,构造方法中指定日期模式
2对象调用parse方法(String) 返回Date

1 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd")
2 Date date = sdf.parse("2017-7-29")

# Calendar java.util.Calendar 抽象类
Calendar c = Calendar.getInstance(); 获取子类对象

获取日历静态成员变量的值
c.get(成员变量) c.get(Calendar.YEAR) 月份加1,外国是0-11

c.set(成员变量,值) 设置日历的值
c.set(int year, int month, int day);

c.add(field, value) 日历某个字段偏移value

 

WE ARE ALL IN THE GUTTER, BUT SOME OF US ARE LOOKING AT THE STARS
原文地址:https://www.cnblogs.com/YKang/p/7266984.html