Java基础1
1. 标识符注意点
-
所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
String Ahello = "World"; String hello = "World" ; String $hello = "World" ; String _hello = "World" ;
-
首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的任何字符组合
-
不能使用关键字作为变量名或方法名
-
标识符是大小写敏感的
-
合法标识符举例:age、$salary._value、__1_value
-
非法标识符举例:123abc、-salary、#abc
-
可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很Low
public class HelloWorld { public static void main(String[] args) { System.out.println("hello,world"); String 王者荣耀="百星王者"; //String 王者荣耀=“倔强青铜"; System.out.println(王者荣耀); } }
2.标识符的命名规范(遵守驼峰命名方式)
- 类名、接口名:首字母大写,后面每个单词首字母大写
- 变量名、方法名:首字母小写,后面每个单词首字母大写
- 常量名:全部大写
java关键字:
3.数据类型
-
基本类型
- 整数型
- byte 占1个字节范围:-128~127
- short 占2个字节范围:-32768 ~ 32767
- int 占4个字节范围:-2147483648 ~ 2147483647
-
long 占8个字节范围:-9223372036854775808~9223372036854775807
- long类型以L结尾:long x=123L
- 浮点型
-
float 占4个字节
- float类型以F结尾:float x=123F 或者 float x=(float)123
- double 占8个字节
-
float 占4个字节
- 字符型 char 占2个字节
- 布尔型 boolean 占1位其值只有true和false两个
- 整数型
-
引用类型
- 类
- 接口
- 数组
-
拓展
-
整数拓展
//进制:二进制0b 十进制 八进制0 十六进制0x int i = 10; int i2 = 010;//八进制0 ---->结果为8 int i3 = 0x10; //十六进制0x ---->结果为16
-
浮点数拓展
//需要计算不能有误差的话使用BigDecimal 数学工具类 //float 有限 离散 舍入误差 大约 接近但不等于 //double //最好完全使用浮点数进行比较 //最好完全使用浮点数进行比较 //最好完全使用浮点数进行比较 float f = 0.1f; //0.1 double d = 1.0/10; //0.1 //f是不等于d的 float d1 = 23131312312312313f; float d2 = d1 + 1; //d1是等于d2的
-
字符拓展
char c1 ='a'; char c2 ='中'; System.out.println(c1); System.out.println((int)c1);//强制转换 结果为97 System.out.println(c2); System.out.println((int)c2);//强制转换 结果为20013 //所有的字符本质还是数字 //Unicode编码 'a' 97 'A' 65 '0' 48
-
布尔值扩展
boolean flag = true; if(flag==true){}; if(flag){}; //这两个if表达一个意思
-
转意字符
\n 换行符 \t 制表符 \' 普通的单引号 \\ 普通的反斜杠 \" 普通的双引号
-
-
类型转换
-
不能对布尔值进行转换
-
运算中,不同类型的数据先转化为同一类型,然后进行运算
-
byte < short,char < int < long < float < double
-
强制类型转换:
-
大容量转换成小容量
-
需要加强制类型转换符,程序才能编译通过
-
但是在运行阶段可能存在内存溢出或损失精度,所以谨慎使用
//操作比较大的数的时候,注意溢出问题 //JDK7以后新特性,数字之间可以用下划线分割 int money = 10_0000_0000; int years = 20; int total = money*years; //输出total结果为-1474836480 ,计算的时候溢出了
-
-
4.运算符
-
算术运算符: +,-, *,/,%,++,--
-
赋值运算符=
-
关系运算符:>,<,>=,<=,==,!= ,instanceof
-
逻辑运算符: &&,||,!
-
位运算符: &,|,^,,~,>>,<<, >>>(了解! ! ! )
-
条件运算符?∶
-
扩展赋值运算符:+=,-=,*=,/=
//位运算 /* A= 0011 1100 B = 6000 1101 —————————————————————————————————————————————————————— A&B = 0000 1100 A|B = 0011 1101 A^B = 0011 0001 ~B = 1111 0010 2*8 = 16 2*2*2*2 效率极高! ! ! << *2 左移 >> /2 右移 0000 0000 0 0000 0001 1 0000 0010 2 0000 0011 3 0000 0100 4 0000 1000 8 0001 0000 16 */ //三元运算符 //x ? y : z //如果x==true,则结果为y,否则结果为z int score = 80; String type = score <6?"不及格":"及格"; System.out.println(type);
5.包机制
-
为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。
-
包语句的语法格式为:
package pkg1[. pkg2[. pkg3...]];
-
一般利用公司域名倒置作为包名;如:www.baidu.com 写成com.baidu.www
-
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import"语句可完成此功能
import package1[.package2...].(classname|*);
6.JavaDoc
-
javadoc命令是用来生成自己API文档的
-
参数信息
- @author作者名
- @version版本号
- @since指明需要最早使用的jdk版本
- @param参数名
- @return返回值情况
- @throws 异常抛出情况
javadoc -encoding UTF-8 -charset UTF-8 Doc.java