变量命名规则
不能使用关键字,不能以数字开头
八大数据类型
int,byte,short,long,float,double,char,boolean
public class Demo02 {
public static void main(String[] args) {
//八大数据类型
String a="123";
System.out.println(a);
int num = 10;
byte num1 = 20;
short num2 = 30;
long num4 = 40L; //long类型后面要加L
float num5 = 50.4F; //后面一定要加F
double num6 = 60.5;
System.out.println(num);
char name = '中';
boolean flag = true;
}
}
数据类型扩展
public class Demo03 {
public static void main(String[] args) {
//整数拓展: 进制 二0b 十 八进制0 十六进制0x
int i = 10;
int i1 = 010;
int i2 = 0x10;
System.out.println(i);
System.out.println(i1);
System.out.println(i2);
System.out.println("====================");
//浮点数扩展 银行业务怎么表示钱?
float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);
float d1 = 215494846541f;
double d2 = d1+1;
System.out.println(d1==d2);
//字符拓展
char c1 = 'a';
char c2 = '中';
System.out.println("====================");
System.out.println(c1);
System.out.println((int)c1);
System.out.println(c2);
System.out.println((int)c2);
//转义字符 \t 制表符 \n换行
System.out.println("Hellp\tWorld");
System.out.println("Hello\nWorld");
System.out.println("====================");
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);
String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);
//对象 从内存分析
//布尔值扩展
boolean flag = true;
if (flag == true){}
if (flag){}
//代码要精简易读
}
}
数据类型的转换
public class Demo04 {
public static void main(String[] args) {
int a = 128;
byte b = (byte) a;//内存溢出
double c = a;
//强制转换 (类型)变量名
//自动转换 低--高
System.out.println(a);
System.out.println(b);
/*注意点:
1.不能对布尔型进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题
*/
System.out.println("==================");
System.out.println((int)12.6);
System.out.println((int)34.56f);
System.out.println("==================");
char i = 'a';
int j = i+1;
System.out.println(i);
System.out.println((char) j);
System.out.println("==================");
//操作较大数的时候,注意溢出
//jdk7新特性,数字之间可以用下划线分割
int money = 10_0000_0000;
int years = 20;
int total = money*years;//计算溢出了
long total1 = money*years;//默认int,转换之前存在了问题
long total2 = money*((long)years);
System.out.println(total);
System.out.println(total1);
System.out.println(total2);
}
}
变量
public class Demo05 {
//类变量 static
static double gz = 2500;
//属性;变量
//实例变量:从属于对象;如果不自行初始化,这个类型的默认值0 0.0
//布尔值;默认值是false
//除了基本类型,其余默认值都是null
String name;
int age;
//main方法
public static void main(String[] args) {
//局部变量;必须声明和初始化值
int i=10;
System.out.println(i);
//变量类型 变量名字 = new Demo05();
Demo05 demo05 = new Demo05();
System.out.println(demo05.age);
System.out.println(demo05.name);
//类变量 static
System.out.println(gz);
}
}
/*变量命名规范
所有变量,方法,类名:见名知意
局部变量,类成员变量,方法名:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则
*/
三元运算和包机制
public class Demo08 {
public static void main(String[] args) {
//三元运算
//a ? b : z
//如果x==true,则结果为y,否则为z
int score = 50;
String type = score < 60 ? "不及格":"及格";
System.out.println(type);
/* 包机制
package pkg1[. pkg2[. pkg3...]];
一般利用公司域名倒置作为包名
为了能够使用某一个包的成员,我们需要在java程序中明确导入该包。使用“import”语句可完成此功能
import package1[.package2...].(classname|*);
*/
}
}