基本语法学习笔记-20200806
注释、标识符、关键字
注释
-
-
注释不执行,写给写代码的人看
-
保持写注释的好习惯
-
平时写代码,注释毕竟要规范
-
注释的种类:
-
单行注释
-
多行注释
-
文档注释
-
标识符
关键字:
Java所有的组成部分都需要名字。类名、变量名一级方法名都被成为标识符
注意点:
-
所有标识符都因该以字母(A-Z或者a-z),美元符($)、下划线(_)开始
-
首字符之后可以是字母、美元符、下划线或者数字的任何字符
-
不能使用关键字作为变量名或使用方法
-
标识符大小写敏感的
-
可以使用中文命名,但不建议使用
数据类型
强类型语言
变量的使用严格规定,所有变量必须先定义后才能使用
String:字符串
int:数字
Java 的数据类型两大类
-
基本类型:
-
引用类型
reference:引用
什么是字节
-
(bit):计算机内部最小的储存单位
-
字节(byte):数据处理的基本单位,用B表示。
-
1B=8bit
-
字符:计算机使用的字母、数字、字和符号。
数据类型拓展
-
整数拓展:进制
-
二进制:0b
-
八进制:0
-
十进制
-
十六进制:0x (0~9 A~F)
-
-
浮点数拓展
-
银行业务怎么表示:(float&double有问题不能用)BIgDecimal 数学工具类
-
float f=0.1f;
double d=1.0/10;
System.out.println(f==d);//比较f&d是否一样 -
float d1=65623456321f;
float d2=d1+1;
System.out.println(d1==d2);//比d1&d2是否一样 -
原因:float 是有限的,离散的,有一个舍入误差,大约,接近但不等于。
-
最好完全使用浮点数进行比较。
-
3.字符拓展
-
char c1='a';
char c2='中'; -
强制转换:
char c1='a';
char c2='中';
System.out.println(c1);
System.out.println((int)c1);//强制将字符转换成数字
System.out.println(c2);
System.out.println((int)c2);//强制将字符转换成数字 -
所有的字符本质还是数字
-
编码 Unicode 表 占2字节 总共有65536(2的16次方)(Excel也是65536)
例如:a=97 A=65
-
范围:U0000 UFFFF
char c3='\u0061';
System.out.println(c3); -
转义字符
-
\t:制表符 \n:换行 很多,需要自学
-
-
布尔值扩展
boolean flag = true;
if(flag==true);//新手这样写
if(flag);//老手这样写,两个意思一样。
类型转换
Java是强类型语言,所以进行有些运算需要类型转换
byte,short,char,int,long,float,double
低==================================高
public class Demo04 {
public static void main(String[] args) {
int i=128;
byte b=(byte)i;//内存溢出情况,超出了byte的范围。
System.out.println(i);
System.out.println(b);
}
}
-
强制类型转换 需要(类型)变量名 高→低,类似于上面的程序
-
自动转换 低到高。例如:
public class Demo04 {
public static void main(String[] args) {
int i=128;
double b=i;
System.out.println(i);
System.out.println(b);
}
}注意点
-
不能对布尔值进行转换
-
不能把对象类型转换为不相干的类型
-
不能高容量转换到低容量的时候,强制转换;否则自动转换。
-
转换的时候可能存在溢出或者精度的问题
public class Demo04 { public static void main(String[] args) { System.out.println((int)23.7); System.out.println((int)-45.89f); } }
-
5. char字符也可以自动转换,
public class Demo04 {
public static void main(String[] args) {
char c='a';
int d=c+1;
System.out.println(d);
System.out.println((char)d);
}
}
-
再次强调溢出的问题,
public class Demo05 { public static void main(String[] args) { //操作比较大的数的时候,注意溢出问题 //JDK7新特性,数字之间可以用_分割 int money = 10_0000_0000; int years=20; int total=money*years;//int的范围是正负21亿,输出结果溢出 long total2=money*years;//计算结果已经溢出,给total2转换为long也没用 long total3=(long)money*years;//这才是正确的输出结果 System.out.println(total); System.out.println(total2); System.out.println(total3); } }
变量、常量
运算符

浙公网安备 33010602011771号