基础语法学习
一、注释
单行注释:
//单行注释
多行注释:
/*
多行注释
多行注释
*/
文档注释:
/**
* @author leijiao
*/
二、标识符和关键字
标识符:类名、变量名、方法名
- 标识符命名不能与关键字重复!
- 只能以字母、$、_ 开头,不能用数字!
关键字:
三、数据类型
1、基本类型
1.1、基础
整数:byte(-128~127)、short、int、long
小数:float、double
boolean:true/false
字符:char
//八大基本数据类型
//整数
int a = 1;
byte b = 20;
short c = 1;
long d = 56738392928728L; //L结尾
//小数
float e = 1.1F; //F结尾
double f = 3.22323223322;
//布尔值
boolean g = true;
boolean h = false;
//字符
char i = '一'; //单引号,只能写一个字
1.2、扩展
整数扩展:进制
-
二进制0b
-
八进制0
-
十进制
-
十六进制0x
//进制 int i1 = 10; //十进制:10 int i2 = 010; //八进制:8 int i3 = 0x10; //十六进制:16
小数扩展:
//有限 离散 舍入误差
//aa!=bb
float aa = 0.1f; //0.1
double bb = 1.0/10; //0.1
//cc==dd
float cc = 1937297394947947329f;
float dd = cc+1;
2、引用类型
类、接口、数组
四、字节单位换算
1bit表示1位
1Byte表示1个字节,1B=8b
1024B=1KB
1024KB=1M
1024M=1G
五、类型转换
低------------------------------------------------------------>高
byte,short,char -> int -> long -> float -> double
运算中,需要把不同类型的数据转为同一类型才可以运算。
1、强制类型转换
从高到低
//强制类型转换
int ii = 127;
byte jjj = (byte)i;
2、自动类型转换
从低到高
//自动类型转换int p = 127;double gg= p;
3、注意点
-
不能对Boolean类型进行转换
-
不能把对象类型转换为不相干的类型
-
在把高容量转换为低容量的时候,强制转换
-
转换的时候可能存在内存溢出、精度问题
//内存溢出int q = 128;byte qq = (byte)i; //-127//精度问题System.out.println((int)12.27); //12System.out.println((int)-27.27); //-27
六、变量、常量、作用域、命名规范
1、变量
java是强类型语言,变量必须先定义再使用
类型 变量名 = 值;
2、常量
public class Demo1 { //常量:final。在程序中不允许被修改 //修饰符不存在先后顺序 static final double PI = 3.14; public static void main(String[] args) { System.out.println(PI); }}
3、作用域
类变量、实例变量、局部变量
public class Demo0 { //类变量 static static double s = 2500; //实例变量:从属于对象 //如果没有初始化值,则为该类型的默认值。 String name; int age; public static void main(String[] args) { //局部变量:必须要声明和初始化值,只能在方法里面用 int i = 100; System.out.println(i); //类变量的使用 System.out.println(s); //2500 //实例变量的使用 demo0 d = new demo0(); System.out.println(d.name); //null System.out.println(d.age); //0 }}
4、命名规范
-
变量:小驼峰。如:lastName
-
常量:大写字母+下划线。如:Min_Space
-
类名:大驼峰。如HelloWorld
-
方法名:小驼峰。如,runMain()
七、运算符
-
算数运算符:+ - * / % ++ –
-
赋值运算符:=
-
关系运算符:> < >= <= == != instanceof
-
逻辑运算符:&& || !
-
条件运算符:? : 例如,x?y:z 如果x==true,则为y,否则为z
-
扩展赋值运算符:+= -= *= /= 例如,a+=b 等同于 a=a+b
八、包机制
包语句格式:package pkg1.pkg2.pkg3
导入包格式:import pkg1.pkg2.pkg3.classname
//包package com.pipijiao.operator;//导入包import javax.xml.crypto.Data;
九、生成文档
- 在类或者方法上一行输入: /**+回车,自动生成文档说明
package com.pipijiao.base;/** * @author leijiao * @version 1.0 * */public class Doc { String name = "a"; /** * * @param name * @return * @throws Exception */ public String test(String name) throws Exception{ System.out.println("aa"); return name; }}
- javadoc文档生成:进入代码目录,cmd执行命令javadoc -encoding UTF-8 -charset UTF-8 xxx.java,在目录下会生成index.html文件