数据类型:
java是强类型语言—>要求变量的使用严格符合规定,所有变量必须先定义再使用 弱类型语言—>要求变量的使用不必符合规定 变量名可以用中文命名—>但是不建议 数据类型可以分为两种类型:基本类型;引用类型(类,接口,数组)
八大基本数据类型:
byte num1 = 20; // 1B
short num2 = 10000;// 2B
int num3 = 1000000;// 4B
long num4 = 1000L;//long类型要在数字后面加L 8B
float num5 = 1.5F;//float类型要在数字后面加F 4B
double num6 = 3.1415925;//8B
char name = 'A';//2B
boolean flag = true;//占1bit
浮点数有关知识扩展: 浮点数表示范围有限同时是离散的,存在舍入误差, 大约, 接近但不等于 最好完全避免浮点数进行比较
类型转换: 类型转换 低—>高 byte,short,char-> int ->long -> float -> double 运算中,不同类型的数据先转化为同一类型,然后进行运算 强制类型转换:高—>低 自动类型转换:低—>高
- 注意点:
- 1.不能对布尔值进行转换
- 2.不能把对象类型转换为不相干的类型
- 3.在把高容量转换到低容量的时候,强制转换
- 4.转换的时候可能存在内存溢出,或者精度问题!
变量、常量、作用域、运算符
变量:可以变化的量 Java是一种强类型语言,每个变量都必须声明其类型 Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域 type varName [=value] [{,varName[=value]}]; 数据类型 变量名=值;可以使用逗号隔开来声明多个同类型变量(不推荐一次声明多个—>不利于程序可读性) 注意事项: 每个变量都有类型,类型可以是基本类型,也可以是引用类型 变量名必须是合法的标识符 变量声明是一条完整的语句,因此每一个声明都必须以分号结束
常量:可以理解为特殊的变量,设定后值不能改变 常量名一般用大写字母表示,前要加final
变量的命名规范:所有变量,方法,类名:见名知意 类成员变量,局部变量,方法名:首字母小写和驼峰原则 常量:全大写和下划线 类名:首字母大写和驼峰原则
public class Demo03 {
//类变量 static-->从属于类,与类一同出现,一同消失
static double salary = 2500;
//常量
//final修饰符:不存在先后顺序
static final double PI = 3.14;
final static double PM = 3;
//实例变量-->类里面,方法外面-->从属于对象 -->不初始化,会变成默认值0
//实例变量和类变量的区别就是有无static关键词。
//布尔值默认false
//除了基本类型,其余的默认值都是null
String name;
int age;
//main方法:
public static void main(String[] args) {
//局部变量,必须声明和初始化值
int i = 10;
System.out.println(i);
//实例变量的使用
//变量类型 变量名字 = new Demo03()
Demo03 demo = new Demo03();
System.out.println(demo.age);
System.out.println(demo.name);
//类变量 static
System.out.println(salary);
}
}
运算符: 算术运算符:+,-,,%,/,++,— 赋值运算符: = 关系运算符:>,<,>=,<=,==,!=,instanceof 逻辑运算符:&&,|| 注意短路运算 a&&b或者a||b如果第一项可以判断正误,就直接短路运算 位运算符:&,|,^(异或),~(取反) 效率极高: << 左移 >> 右移 条件运算符:?: 扩展赋值运算符:+=,-= int a = 10; int b = 20; a += b; 字符串连接符:+ System.out.println(“”+ a +b);//3020 :在前面进行拼接 System.out.println(a+b+” “);//50:在后面不影响前面运算 关系运算符返回的结果:布尔值 eg.System.out.println(c == d); //false ++ — 自增,自减,一元运算符 幂运算:Math.pow(3,2):33
包机制和javadoc:
包机制:区别类名的命名空间 一般公司域名倒置作为包名 使用包中的成员,需要在java程序中明确导入该包,使用import语句可以完成此功能
javadoc命令生成自己的API文档的(/+enter自动生成) /
- @author 33769 /