一、生活中的感悟(有摘抄和自己写)
总有一天,你会回头看看那些经历过的人和事;当时再大的事,现在看来好像也不过如此。你甚至会觉得自己当时太小题大做、太幼稚,根本没有什么是过不去的,也根本没有什么人是离不了的。可你也不得不承认,就是因为发生过的这些,才让你变成了现在这个样子。
二、java基础
1.java之父
sun公司的James Gosling领导的开发小组
2.java基本类型
byte 1字节 8位 -2^7---(2^7-1) 【因为正负所以除2,2^7,因为有0,所以 2^7】(个人想法)
short 2字节 16位 -2^15---(2^15-1)
int 4字节 32位 -2^31---(2^31-1)
long 8字节 64位
char 2字节
注:char x=‘a’ x存储的是97(Unicode表)
float 4字节 1.4E-45-----3.4028235E38和-3.4028235E38---(-1.4E-45)
注:存储是保留8位有效数字,但是我自己实验还是有点问题,欢迎回复解答疑惑
如下:
public class TypeTest {
public static void main(String[] args) {
float x1=123456789f;
float x2=123456788f;
float x3=1234.56784f;
float x4=1234.56789f;
float x5=1234.12345f;
System.out.println(x1);
System.out.println(x2);
System.out.println(x3);
System.out.println(x4);
System.out.println(x5);
}
}
运行结果如下:
所以实际只有7位有效,第8位也不符合四舍五入原则,网上也没太找到为什么,知道的欢迎回复
double 8 字节 64位 4.9E-324------1.7976931348623157E308和(-1.7976931348623157E308)------(-4.9E-324)
有效位为16(估计15),和float一样
Boolean 1字节 8位
注:精度低到高不用强制,高到低需要
forEach的用法
3.类基础
注:(1)局部变量没有默认值
(2)可看作new运算符只能和构造方法运算,得到一个对象的引用,如new A(),再赋值给对象 A a=new A();
(3)对象的引用在栈中,对象的实体(分配给对象的变量)在堆里,栈的好处是存取速度比堆快,但数据大小和生命周期必须确定缺乏灵活,而堆可以动态分配
(4)可变参数