目录
视频教程传送门 -> https://www.bilibili.com/video/BV1Cv411372m?p=22
类型转换
数据类型 | 关键字 | 内存占用字节数 | 取值范围 |
整数 | byte | 1 | -128~127(-2^7~2^7-1) |
short | 2 | -32768~32767(-2^15~2^15-1) | |
int (default) | 4 | 10位数 | |
long | 8 | ||
浮点数 | float | 4 | |
double (default) | 8 | ||
字符 | char | 2 | |
布尔 | boolean | 1 |

表达式自动类型转换
byte,short,char -> int -> long -> float -> double
注意事项:
- 表达式的最终结果类型由表达式中的最高类型决定
- 表达式中 byte,short,char 是直接转换成int类型参与运算的
例如,如下的k应该定义为int类型来接两个byte类型数据的和,否则会报错
强制类型转换
类型范围大的数据或者变量,不能直接赋值给类型范围小的变量,会报错
可以强行将类型范围大的变量、数据赋值给类型范围小的变量
数据类型 变量1 = (数据类型)变量2
数据类型 变量1 = (数据类型)数据
连接符"+"
能算则算,不能算就连一起
【例】特别注意 数字和char是能进行运算的,a的ASCII码为97
package com.test.operator;
public class OperatorDemo {
public static void main(String[] args) {
int a = 5 ;
System.out.println("abc" + 'a'); // abca
System.out.println("abc" + a); // abc5
System.out.println(a + 'a'); // 102
System.out.println(a + "" +'a'); // 5a
System.out.println(a + 'a'+"a"); // 102a
}
}
逻辑运算符
短路与、短路或的性能优于逻辑与、逻辑或
短路与 (&&) 的判断结果与 “&” 一样,过程是左边为 false,右边则不执行。
短路或 (||) 的判断结果与 “|” 一样,过程是左边为 true, 右边则不执行。
逻辑与 (&) 和逻辑或 (|) ,无论左边是 false还是 true,右边都要执行。
键盘录入
API (Application Programming Interface,应用程序编程接口)
Java写好的程序(功能代码),可以直接调用
Oracle 也为Java写好的程序提供了相应的 API文档(技术使用说明书)
下载API文档 ORACLE -> Products -> Java -> Download Java now -> Documentation Download
For example, this code allows a user to read a number from System.in:
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
【例】让用户输入ID和名字进入系统
说明:
1.导包,告诉程序去JDK的哪个包中找扫描器 line2
2.得到键盘扫描器对象 line9
3.接收用户输入数据
数字 line13
字符串 line18
package com.test.scanner;
import java.util.Scanner;
// 1、导包操作 (并不需要自己写的,输入Scanner根据提示导入更方便)
public class ScannerDemo {
public static void main(String[] args) {
// 接收用户的键盘输入的数据。
// 2、得到一个键盘扫描器对象
Scanner sc = new Scanner(System.in);
System.out.println("请您输入您的ID:");
// 3、等待接收用户输入一个整数,按了回车键才会把数据交给idnum变量
int idnum = sc.nextInt();
System.out.println("您的ID是:" + idnum);
System.out.println("请您输入您的名字:");
// 4、等待接收用户输入一个字符串,按了回车键才会把数据交给name变量
String name = sc.next();
System.out.println(name + "欢迎进入系统!");
}
}
交互输入输出结果