1. 关键字
关键字:被java赋予了特俗含义的单词(例如:public , class , void , static)
特点:
1.关键字字母全部小写
2.关键字在编辑器中有特殊的颜色
2. 变量
变量:在程序运行过程中,其值可以发生改变的量。
格式:
public class Demo01 {
public static void main(String[] args) {
/*格式一
数据类型 变量 = 值;
*/
int a = 10;
System.out.println(a);
/*格式二
数据类型 变量;
变量 = 值;
*/
int b;
b = 10;
System.out.println(b);
/*格式三
数据类型 变量1 = 值 , 变量2 = 值;
*/
int c = 10 , d = 20;
System.out.println(c);
System.out.println(d);
}
}
注意事项:
1.在同一个范围中变量不能重名
2.变量必须先赋值才能输出使用
3. 数据类型
数据类型:Java语言是强类型语言,对每一种数据都给出了明确的数据类型,不同的数据类型分配了不同的内存空间,所以它们表示的数据大小也是不一样的。
1.基本数据类型;
2.引用数据类型:类,接口,数组,字符串(String)
整数(byte,short,int,long)
浮点数(float,double)
字符(char)
布尔(true,false)
数据类型 | 关键字 |
---|---|
整数 | byte ,short , int(整数的默认类型) ,long |
浮点数 | float , double(小数的默认类型) |
字符 | char |
布尔值 | true,false |
关键字 | 内存占用(字节) | 取值范围 |
---|---|---|
byte | 1 | -128~127 |
short | 2 | -32768~32767 |
int(默认) | 4 | -2的31次方~2的31次方-1 |
long | 8 | -2的63次方~2的63次方-1 |
float | 4 | 1.401298e-45~3.402823e+38 |
double(默认) | 8 | 4.9000000e-324~1.797693e+308 |
char | 2 | 0-65535 |
boolean | 1 | true , false |
public class Demo03 {
public static void main(String[] args) {
//byte
byte a = 10;
System.out.println(a);
// short
short b = 20;
System.out.println(b);
// int
int c = 30;
System.out.println(c);
// long
long d = 200;
System.out.println(d);
// 如果要赋值int范围外的值,必须在值后面加上L/l
long e = 30000000000L;
System.out.println(e);
// float
// 如果要赋值float小数值,必须在值后面加上F/f(因为小数默认是double类型)
float f = 3.14f;
System.out.println(f);
// double
double g = 3.1415;
System.out.println(g);
// char
char h = '黑';
System.out.println(h);
// 布尔boolean
boolean i = true;
System.out.println(i);
boolean j = false;
System.out.println(j);
}
}
4. 标识符
作用:给类,变量,方法起名的符号
命名规则:
由数字、字母、下划线(_)和美元符($)组成
不能以数字开头
不能是关键字
区分大小写
命名约定:
小驼峰式:变量;方法
首字母小写,例如:int studyNumber
大驼峰式:类
首字母大写,例如HelloWorld.java
命名要尽量做到:见名知意
5. 键盘录入
1. 导包
import java.util.Scanner;
2. 创建对象
Scanner sc = new Scanner(System.in);
3. 接收数据
int 变量 = sc.nextInt();
// 导包(可以自动生成)
import java.util.Scanner;
public class Demo06 {
public static void main(String[] args) {
// 创建对象(如果先创建对象,上面导包就会自动生成)
Scanner sc = new Scanner(System.in);
// 提示用户输出
System.out.println("请输入您的身高:" );
// 接收数据(接收用户键盘输入内容)
int a = sc.nextInt();
}
}
6. 数据类型转换
-
自动类型转换
把一个表示数据范围小的数值或者变量赋值给另一个表示数据范围大的变量
例如: int b = 10;
double a = b;
-
强制类型转换
把一个表示数据范围大的数值或变量赋值给另一个表示数据范围小的变量
例如: int a = 3;
byte b = (byte)a;
public class Demo08 {
public static void main(String[] args) {
// 自动类型转换
int a = 10;
double b = a;
System.out.println(a);
System.out.println(b);
// 强制类型转换
double c = 3.1415;
int d = (int)c;//注意int只接收整数部分,此处只接收整数3,小数点后数据会丢失
System.out.println(c);
System.out.println(d);
// char字符
char e = 'a';//ASCII编码表中 'a'= 97
int f = e;
System.out.println(e);
System.out.println(f);
}
}
7. 运算符
1.基本算术运算符
符号 | 作用 | 说明 |
---|---|---|
+ | 加 | a + b |
- | 减 | a - b |
* | 乘 | a * b(*等同×) |
/ | 除 | a / b |
% | 余 | 结果是两个数据做除法的余数 |
注意事项:
1.Java中两个整数计算机的结果是整数,如果要得到小数就要有小数参与运算
2.两个整数相除,如结果为小数,只保留整数部分的值
3.两个数据运算以后会变成较大类型的值
public class Demo01 {
public static void main(String[] args) {
// 掌握算术运算符 + - * / %
int a = 21;
int b = 10;
System.out.println(a + b);// 31
System.out.println(a - b);// 11
System.out.println(a * b);// 210
System.out.println(a / b);// 2 只保留整数部分
System.out.println(a % b);// 1
int c = 10;
double d = 3.14;
double e =c + d;
System.out.println(e);
byte f = 15;
short g = 20;
int i = f + g;
}
}
import java.util.Scanner;
public class Demo04 {
public static void main(String[] args) {
// 键盘输入一个三位数整数
Scanner sc = new Scanner(System.in);//导包,键盘录入技术
System.out.print("请输入一个三位数:");
int num = sc.nextInt();
// 获取数字的个位
int gewei = num % 10;
// 获取数字的十位
int shiwei = num / 10 % 10;
// 获取数字的百位
int baiwei = num / 100;
System.out.println("这个三位数的个位是:" + gewei);
System.out.println("这个三位数的十位是:" + shiwei);
System.out.println("这个三位数的百位是:" + baiwei);
}
}
2. 字符的 “+” 操作
字符+法其实是使用字符底层的数字在操作
public class Demo02 {
public static void main(String[] args) {
int a = 'A' + 10;
System.out.println(a); //75 'A'值为65
int b = 'a' + 10;
System.out.println(b); //107 'a'值为97
int c = '0' + 10;
System.out.println(c); //58 '0'值为48
int d = '我' + 10;
System.out.println(d); //25115 '我'值为25105
}
}
3.字符串的 “+” 操作
当 “ +” 出现在字符串中,这个 “+” 是连接符,不是运算符
public class OperatorDemo2 {
public static void main(String[] args) {
// 目标: +符号做连接符的识别(与字符串做+运算时会被当成连接符,其结果还是字符串)
int a = 5;
System.out.println("abc" + 'a');
System.out.println("abc" + a);
System.out.println(5 + a);
System.out.println("abc" + 5 + 'a');
System.out.println(15 + "abc" + 15);
System.out.println(a + 'a');// 5+97=102
System.out.println(a + "" + 'a');
System.out.println(a + 'a' + "it");
System.out.println("it" + a + 'a');
System.out.println("it" + ( a + 'a'));
}
}
8.赋值运算符
符号 | 作用 | 说明 |
---|---|---|
+= | 加后赋值 | a += b 等价于 a = (a的数据类型)a+b |
-= | 减后赋值 | a -= b 等价于 a = (a的数据类型)a-b |
*= | 乘后赋值 | a = b 等价于 a = (a的数据类型)ab |
/= | 除后赋值 | a /= b 等价于 a = (a的数据类型)a/b |
%= | 取余后赋值 | a %= b 等价于 a = (a的数据类型)a%b |
public class OperatorDemo4 {
public static void main(String[] args) {
// 目标: 学会使用赋值运算符: = += -= *= /= %=
int m = 9;
int n = 3;
m += n;
System.out.println(m);
int a = 50;
int b = 10;
// a += b; //等价于: a = (int)(a + b)
// a -= b; //等价于: a = (int)(a - b)
// a *= b; //等价于: a = (int)(a * b)
// a /= b; //等价于: a = (int)(a / b)
a %= b; //等价于: a = (int)(a % b)
System.out.println(a);
}
}
9.自增自减运算符
符号 | 作用 | 说明 |
---|---|---|
++ | 自增 | 变量自身的值加1 |
– | 自减 | 变量自身的值减1 |
public class OperatorDemo3 {
public static void main(String[] args) {
// 目标:学会使用自增自减运算符: ++ --
int a = 10;
// a++; //a = a + 1(先用再算)
++a;//(先算再用)
System.out.println(a);
int b =10;
// b--; //b = b - 1
--b;
System.out.println(b);
}
}
总结
1. 关键字都有什么特点?
2. 基本数据类型有哪8个?记一下单词
3. 标识符中什么是大驼峰式?什么是小驼峰式?
4. 键盘输入的三个步骤是什么?
5. 什么是自动类型转换?什么是强制类型转换?
6. 字符的“+”和字符串的“+”分别是什么?
7. 赋值运算符要掌握
8. 自增自减运算符