JAVA基础语法
注释
单行注释 两个斜杠 / 后面的东西就定义为注释 //我是注释
多行注释 /* 中间的字 即是注释 */
- 单行注释只能注释一行文字
- 多行文字可以注释一段文字
- 注释并不会被执行,是写给我们写代码的人看的。
标识符
不能使用关键字作为变量名或者方法名
标识符是大小写敏感的
数据类型
整数 byte int 最常用 short long long类型要在数字后面加个L
浮点数(小数)* float float类型要在数字后面加个F double
字符 char
字符串 String
布尔值:是非 boolean
整数拓展 进制 二进制 0b开头 十进制 八进制 0开头 十六进制 0x开头
int i = 10; int i = 010;//八进制0 int i = 0x10;//十六进制0x 0~9 A~F 16
浮点数拓展 float的字长是有限的 有精度损失 一般都会自动舍入误差
所以 最好完全避免使用浮点数比较
字符拓展 强制转换–所有的字符本质还是数字
转义字符 \t 制表符 \n 换行
类型转换
运算中,不同类型的数据先转换为同一类型,然后进行运算。
低---------------------------------------------->高
byte,short,char–>int–>long–>float–>double
强制转换 (类型)变量名 由高转到底
int i = 12; byte b = **(byte)**i; (byte)i 就是将i从int型强制转换为byte型
自动转换 由低转高
注意点:1. 不能对布尔值就行转换
2. 不能把对象类型转换为不相干的类型
3. 在把高容量转换到低容量的时候,强制转换
4. 转换的时候可能存在内存溢出,或有精度问题!
变量,常量,作用域
变量 定义变量 int i; 定义并赋值 int i = 5; 定义多个并赋值 int a=1;b=2;c=3;
String name =“qinjiang”; char x = ‘x’; double pi = 3.14;
类变量 static int a=0; 类变量就是在前面加一个 static
实例变量 作用域是类,从属于对象,如果不自行初始化,就为这个类型的默认值 布尔值默认值是false 除了基本类型,其余的默认值都是null
public class Demo08P{
String name;
int age; //实例变量
public static void main(String[] args){
int i=0;
System.out.println(i); //局部变量
Demo08 demo08 = new Demo08();
System.out.println(demo08.age);
System.out.println(demo08.name); //实例变量的使用
}
}
局部变量 必须声明和初始化值 作用域就是声明的这个大括号{}里面
public void method(){
int a =0; //局部变量
}
常量 常量初始化后不能再改变值 常量名一般使用大写字符
修饰符不存在先后顺序 一般用final定义常量 final double PI = 3.14;
public class key {
static final double PO = 5.18;
public static void main(String[] args) {
final double PI = 3.14;
System.out.println(PI);
System.out.println(PO);
}
}
变量的命名规范
类成员变量:首字母小写和驼峰原则:lastName 除了第一个单词以外,后面的单词首字母大写
局部变量:首字母小写和驼峰原则
变量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则:Man,GoodMan
方法名:首字母小写和驼峰原则:run(),runRun()
运算符 operator
算术运算符:+,-,*,/,%(取余),++,–
赋值运算符:=
关系运算法:>,<,>=,<=,==(等于),!=(不等于)
逻辑运算符:&&(与),||(或),!(非)
自增++,自减–
int a =3 ;
System.out.println(a); //a = 3
int b = a++; //执行完这行代码后,先给b复制,再自增
//a++ a = a+1
System.out.println(a); //a = 4
System.out.println(b); //b = 3
int c = ++a; //执行完这行代码前,先自增,再给b赋值
System.out.println(a); //b = 5
System.out.println(b); //b = 3
System.out.println(c); //b = 5
幂运算 (次方运算) Math.pow(,)
double pow = Math.pow(2,3); //2 * 2 * 2 = 8
double pow = Math.pow(3,2); //3 * 3 = 9
逻辑运算符
与(and) 或(or) 非(取反)
&& || !
与 运算:两个变量都为真,结果才为ture
或 运算:两个变量以一个为真,则结果才为ture
反 运算:如果是真,则变为假,如果是假则变为真
位运算符
异或操作 A^B:相同是0,不相同是1
取反操作 ~B:全部取反
左移<< 右移>>就是将其化成二进制然后进行移位 空缺位置用0补齐 2<<3 = 16 0000 0010 -> 0001 0000
扩展赋值运算符
+=操作:a+=b a = a+b
-=操作: a-=b a = a-b
字符串连接符
在加号两侧一旦出现String类型(字符串类型) 他会把其他操作数都转成String在进行操作
int a = 10;
int b = 20;
System.out.println(""+a+b); //1020 先看到"" 虽然里面什么都没有 但他也是String类型 会将后面的转化为String类型在输出
System.out.println(a+b+""); //30 ""在后面 所以会先进行运算 再输出
条件运算符
x ? y : z 如果x==ture,则结果为y,否则结果为z
int score = 80;
String type = score<60 ? "不及格":"及格";//要给type赋值 就要先进行后面的计算
System.out.println(type); //及格
包机制
包语句的语法格式为:package pkg1[. pkg2[. pkg3…]];
一般利用公司域名倒置作包名 例如:www.baidu.com 包名应该为 com.baidu.www
为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import"语句可完成此功能
import package1[.package2…].(classname|*);
JavaDoc
在文件目录下的cmd中 输入 javadoc java文件名.java javadoc 参数 java文件名.java
例:该文件名叫 Demo
javadoc Demo.java 如果含有中文需加入参数
javadoc -encoding UTF-8 -charset UTF-8 Demo,java