计算机最小的存储单位:字节(byte)
生活中常用的单位:
1024 byte = 1 KB
1024 KB = 1MB
1024 MB = 1GB
1024 GB = 1TB
1024 TB = 1PB
1024 PB = 1EB
计算机在处理数据对数据进行读取和存储过程。
1.2 常见的进制单位| 进制单位 | 基数范围 |
| 十进制 | 0----9 |
| 二进制 | 0----1 |
| 八进制 | 0----7 |
| 十六进制 | 0----9 a----f |
定义:在代码运行过程中不可改变的量叫常量
常量可分为以下几类:
整数:15
小数(浮点数):3.14
字符:'你' '我'
【注:字符只能用单引号(' ')修饰,并且里面只有一个元素】
真假关系:真 假
字符串:"你好,世界"
【注:字符串要使用双引号(" ")修饰,里边可以有一个或多个元素】
public class Demo01 {
public static void main(String[] args) {
//整数
System.out.println(55);
System.out.println(66);
//小数(浮点)
System.out.println(3.14);
//字符
System.out.println('我');
System.out.println('a');
//真假关系(布尔类型的数据)
System.out.println(true);
System.out.println(false);
//字符串
System.out.println("你好,世界");
}
}
3.变量
定义:程序在运行过程中可以改变的量叫变量
语法格式:
数据类型 变量名字 = 初始化的值;(int a = 11)
数据类型:用来约束当前变量是什么数据类型的
变量名字:自己起的名字,见名知意
= :赋值号
初始化的值:第一次给的数据
4.数据类型【重点】java有八大基本数据类型
整型(4个):byte short int long
浮点型(2个):float double
字符型(1个):char
布尔类型(1个):boolean
| 整型 | 数据范围 | 占用的字节内存 |
| byte | -128(2^7) ~~ 127(2^7-1) | 1字节(8bit |
| short | -32768(2^15) ~~ 32767(2^15-1) | 2字节(16bit) |
| int | -2^31 ~~ 2^31-1 ,java默认的 | 4字节(32bit) |
| long | -2^63 ~~ 2^63 | 8字节(64bit) |
【注意事项】int类型相比较long 小, 如果你的值没有超过int,直接可以把long数据转为int数据类型 ,如果你的值超过了int范围值,就不能转为int了。所以就是一个long类型。后面L或l
| 浮点型 | 数据类型 | 占用的字节内存 |
| float | -3.4x10^38 ~~ 3.4x10^38 | 4字节 |
| double | -1.79x10^308 ~~ 1.79x10^308 java默认的 | 8字节 |
【注意】float类型的数据后要加F或f
因为double是默认的,数据范围比float大
| 布尔类型 | 数据范围 | 占用字节 |
|---|---|---|
| boolean | true或者false | 1字节 |
public class Demo02 {
public static void main(String[] args) {
//整型
byte a = 12;//byte类型数据 数据值只能在-128~127,超过这个范围就报错!!
short b = 12812;//short类型的数据,赋值只能在-32768~32767这个范围,如果超过这个范围就会报错
int c = 123131313;//int类型数据,是java 默认的
long d = 898989889898988898L;//long类型数据
//int类型相比较long 小 如果你的值没有超过int,直接可以把long数据转为int数据类型
//如果你的值超过了int范围值,就不能转为int了。所以就是一个long类型。后面L
//浮点类型
float e = 3.4F;//float类型的数据,后面要加f或F
double f = 3.45664;//double类型的数据,java默认的数据类型,double数据范围比folat大
//大转小精度有可能丢失,所以float类型的数据后面要加f或F
//字符类型
char g = 'a';
char h = '我';
//布尔类型
boolean i = true;
boolean j = false;
}
}
5.变量的命名规则
命名规范
- 类名的命名:
首字母大写,采用大驼峰的命名规则 HelloWord - 变量的命名规范:
1.变量可以使用的范围 英文字母(A-Z,a-z) 数字(0-9)特殊字符(_)
2.但是不能以数字开头
3.要求以小驼峰的命名规则(变量的名字有两个单词组成,第一个单词首字母小写,第二个单词首字母大写)studentName
4.命名时要见名知意
5.已经被java或者系统所占用的关键字,不能作为变量名。
文字对于电脑来讲都是以流的形式进行读取和存储的。首先电脑要识别你的文字。
GBK:
新国标 ,包含中文简体和中国少数名族的文字
GB2312:
老国标,包含中文简体和部分的少数民族的文字
BIG5:
收录中文的繁体,主要用于中国香港,中国澳门,中国台湾等地
UTF-8:
万国码,包含了所有国家的文字,也是咱们开发中最常用的一种编码格式
ASSCII:
美国标准协会,闲着没事搞的一个编码集
7.转义字符目的:把一个无意义的字符转为具有特殊意义的字符,或者是把一个特殊意义的字符转为一个无意义的字符。
语法格式:
需要你转义的字符
几个特殊的符号:
n:回车换行
t:制表符,空格
public class Demo03 {
public static void main(String[] args) {
//打印一个字符"
System.out.println('"');
//打印一个字符串的 ""
System.out.println("""");
//打印出来一个字符 '
System.out.println(''');
//打印出来一个
System.out.println("\");
//打印出来两个\
System.out.println("\\");
System.out.println("蒸羊羔n蒸鹿尾n烧花鸭");
System.out.println("鹅鹅鹅t炖大鹅");
}
}
8.运算符
数学中的加(+)减(-)乘(*)除(/) 取余(%)
先乘除后加减。如果有小括号就先算小括号里面的
基本法则:从左向右执行
public class Demo7 {
public static void main(String[] args) {
//加
int num1 = 10;
int num2 = 20;
num1 = num1 + num2;//30
System.out.println(num1);
//c乘
int i1 = 4;
int i2 = 8;
i1 = i1 * i2;
System.out.println(i1);//32
//减
int a1 = 2;
int a2 = 3;
int a3 = a1 - a2;
System.out.println(a3);//-1
//除
int b1 = 5;
int b2 = 2;
System.out.println(b1 / b2);//2
//取余
int c1 = 9;
int c2 = 2;
c1 = c1 % c2;
System.out.println(c1);//1
}
}
懒汉式写法
num1 = num1 + num2;只有符合这种方式的才能使用懒汉式写法
num1 += num2;加减乘除取余同样
public class Demo05 {
public static void main(String[] args) {
int num1 = 10;
int num2 = 20;
//num1 = num1 + num2; 只有符合这种方式的才能使用懒汉式写法
num1 += num2;//先num1+ num2 然后再使用=赋值给num1
System.out.println(num1);//30
//num1 = num1 - num2;
num1 -= num2;
System.out.println(num1);//10
//num1 = num1 * num2;
num1 *= num2;
System.out.println(num1);//200
//num1 = num1 / num2;
num1 /= num2;
System.out.println(num1);//10
//num1 = num1 % num2;
num1 %= num2;
System.out.println(num1);//10
}
}
9.自增自减运算符
目的:使变量自身加1或者减1
自增和自减运算符,只能操作变量
语法格式:
++变量;
变量++;
++:
在变量的后面,首先执行当前语句操作,然后再自增1
在变量的前面,先自增1,然后再执行其他语句
--变量;
变量--;
--:
在变量的后面,首先执行当前语句操作,然后再自减1
在变量的前面,先自减1,然后再执行其他语句
public class Demo06 {
public static void main(String[] args) {
int num = 10;
//先输出打印,然后再自身加1
// System.out.println(num++);//10
// System.out.println(num);//11
// //先自身加1,再输出打印
// System.out.println(++num);//12
// System.out.println(num);//12
int num1 = 5;
// int ret = num1++ * num1;
// System.out.println(ret);//30
// System.out.println(num1);//6
int num2 = 3;
int ret = num2 * ++num2;
System.out.println(ret);//12
System.out.println(num2);//4
int num3 = 4;
System.out.println(--num3);//3
}
}
10.关系运算符
> (是否大于) <(是否小于) >=(是否大于等于) <=(是否小于等于) !=(是否不等于) ==(是否等于)
关系型运算符返回的结果只能是true或者false
public class Demo07 {
public static void main(String[] args) {
//3 >4是一个整体 结果赋值给了ret这个变量
boolean ret = 3 > 4;
System.out.println(ret);//false
boolean ret1 = 3 < 4;
System.out.println(ret1);//true
boolean ret2 = 3 >= 4;
System.out.println(ret2);//false
boolean ret3 = 3 != 4;
System.out.println(ret3);//true
boolean ret4 = 3 == 4;
System.out.println(ret4);//false
}
}
11.逻辑运算符
逻辑运算符的短路原则与:&&
语法格式: 条件1 && 条件2&&条件3&&条件4....
条件1和条件2都为true的话,才有true。只要有一个为false,那整体的结果就为false
或:||
语法格式:条件1 || 条件2
两个条件都是false的话,整体的结果才为false,只有有一个为true,整体的结果就为true。
非: !
取反
逻辑与的断路原则:
条件1&&条件2&&条件3 只要你有一个条件为false,整体的结果就为false
如果条件1为false,条件2和条件3就不执行了
逻辑或的断路原则:
条件1||条件2||条件3 只要你有一个条件为true,整体的结果就为true
如果条件1位true,条件1和条件2就不执行。
如果条件1为false,条件2执行,条件2位true,条件3就不执行了。
public class Demo08 {
public static void main(String[] args) {
int num = 10;//声明了一个变量叫num,把10赋值给num
//条件1&&条件2
//3>4 && ++num>10
//false && ++num
//3>4 false 断路原则,如果出现了false,后面条件不执行了
boolean ret = (3 > 4) && (++num>15);
System.out.println(ret);//false
System.out.println(num);//11
int num2 = 20;
//++num2 > 20 这个代码没有执行
boolean ret1 = 4 > 3 || ++num2 > 20;
System.out.println(ret1);//true
System.out.println(num2);//20
}
}
12.String类型的数据【字符串类型】
public class Demo09 {
public static void main(String[] args) {
//声明一个字符串类型的数据
//数据类型 变量名字 = 初始化的值;
String s1 = "鹅鹅鹅";//字符串值必须使用双引号
System.out.println(s1);
//字符串的拼接
String s2 = "白毛浮绿水";
System.out.println(s1 + s2);
System.out.println(s1 + "," + s2);
}
}
字符串拼接
用+ 进行拼接
System.out.println(s1 + "," + s2);



