导图社区 Java笔记
Java笔记,每日学习笔记更新,知识全面详细,干货满满,现在不收藏,还在等什么呢。
编辑于2022-11-27 16:47:17 上海Java
Java的基本程序设计结构
注释
单行注释://
多行注释:/* xxx*/
文档注释:/**xxxxx*/
字面量
定义
数据在程序中的书写格式
分类
整数类型
说明:不带小数点的数字
System.out.print(8888);
小数类型
说明:带小数点的数字
System.out.print(1.28);
字符串类型
说明:用双引号括起来的内容
System.out.print("hello world");
字符类型
说明:用单引号括起来的内容,内容只能有一个(可以是数字,中文,标点符号)
System.out.print('a');
布尔类型
说明:布尔值表示真假,结果只有真的假
System.out.print(true);
空类型
注意点
不能使用print方法直接打印null 比如:System.out.println(null) 这样程序会报错,提示:java: reference to println is ambiguous(Java的print方法模棱两可)
扩展点:特殊字符
制表符:‘\t'
作用:在打印的时候,把前面的字符串长度补全到8或者8的倍数的,至少补全1个空格,最多补8个空格
System.out.println("name" + '\t' + "age"); System.out.println("tom" + '\t' + "11");
变量
格式
变量类型 变量名 = 数值 int name = 1
Funciton
输出打印
int name = 1; System.out.println(name);
参与计算
int a = 1; int b = 2; System.out.print(a + b);
修改记录的值
int a = 1; System.out.print(a); a = 20; System.out.print(a);
Tips
1.变量只能存在一个值
2. 变量名不允许重复定义
3. 一条语句可以定义多个变量
int a = 1,b = 2,c = 3;
4. 变量的作用渝范围
5. 变量在使用前必须进行赋值
int a; System.out.print(a); java: variable a2 might not have been initialized
变量练习
上下公交车练习
public class Main { public static void main(String[] args) { //一开始没有乘客 int number = 0; //第1站:上去1位乘客 number = number + 1; //第2站:上去2位乘客,下去1位乘客 number = number + 2 - 1; //第3站:上去2位乘客,下去1位乘客 number = number + 2; //第3站:下去1位乘客, number = number - 1; //第5站:下去1位乘客 number = number - 1; //请问:到了终点站,车上一共几位乘客 System.out.println(number); } }
进制
进制说明
二进制:BIN
定义:由0和1组成,前缀代码:0b开头
System.out.println(0b11111);
十进制:EDC
定义:由0~9组成,没有前缀代码
System.out.println(123);
八进制:OCT
定义:由0~7组成,前缀代码:0开头
System.out.println(017);
十六进制:HEX
定义:由0~9&a~f组成,前缀代码:0x开头
System.out.println(0x1211);
进制转化
任意进制转化十进制
公式:系数*基数的权次幂 相加

系数:就是每一位上的数
基数:当前进制数
权:从右往左,依次为0,1,2
数据类型
基本数据类型
类型分类
整数
byte:-128~127
short
(默认)int
long
定义变量需要注意加L long name = 123L
浮点型
float
定义变量需要注意加F float name = 1.23F
(默认)double
字符型
char
布尔类型
boolean
取值范围:double>float>long>int>short>byte
数据类型练习
输出老师信息
public class Main { public static void main(String[] args) { //输出老师信息 /* 姓名:zhao 年龄:18 性别:男 身高:139.1cm 是否单身:是 */ //定义老师的姓名 String name = "zhao"; //定义老师的年龄 int age = 18; //定义老师的性别 char gender = '男'; //定义老师的身高 double height = 139.1; //定义老师的婚姻状况,true表示单身,false表示已婚 boolean flag = true; System.out.println(name); System.out.println(age); System.out.println(gender); System.out.println(height); System.out.println(flag); } }
标识符
定义:给类,方法,变量等起名字
规则
硬性要求
1. 数字/字母/下划线/美元符号($)组成
2. 不能以数字开头
3. 不能是关键字
4. 区分大小写
软性要求
小驼峰命名:方法&变量
1. 标识符是一个单词,全部小写 name
2. 标识符由多个单词组成,第一个单词首字母小写,其他单词首字母大写 firstName
大驼峰命名法:类名
1. 标识符是一个单词的时候,首字母大写 Student
2. 标识符由多个单词组成,每个单词的首字母大写 GoodStudent
见名知意
键盘录入
操作步骤
步骤1:导包 -- Scanner这个类在哪 import java.util.Scanner; 说明:导出的动作必须出现在类定义的上方
步骤2:创建对象 ---表示我要开始用Scanner这个类 Scanner sc = new Scanner(System.in); 说明:这个格式,除了sc变量名可以变,其他都不允许变
步骤3:接收数据 ---真正开始工作 int i = sc.nextInt(); 说明:这个格式里面,只有i是变量名可以变,其他都不允许变
Scanner练习
Scanner练习1
//导包要写在类定义的上方 import java.util.Scanner; public class Main { public static void main(String[] args) { //创建对象,表示我们要开始用Scanner这个类 Scanner sc = new Scanner(System.in); //提示玩家输入整数 System.out.println("请输入整数"); //接收数据 //变量i 接收键盘录入的数据 int i = sc.nextInt(); //打印变量i System.out.println(i); } }
键盘输入两个数求和
//导入Scanner包 import java.util.Scanner; public class Main { public static void main(String[] args) { /* 使用number1 和 number2 来接收键盘录入的两个数,并且对number 进行求和 */ //创建对象,对象只要创建一个就可以了 Scanner sc = new Scanner(System.in); //提示玩家输入第一个number System.out.println("请输入第一个数"); int number1 = sc.nextInt(); System.out.println("提示玩家输入第二个值"); int number2 = sc.nextInt(); int sum = number2 + number1; System.out.println(sum); } }
工具使用
IDEA
项目结构介绍

Project(项目)
在练习的时候,建议创建空项目
Module(模块)
功能模块
Package(包)
Class(类)
缩写
psvm:public static void main(String[] args)
sout:System.out.println();
设置
自动导包
settings--Editor--General Import

忽略大小写
Settings--Editor--General--Code Completion

IDEA
运算符
定义
对字面量或者变量进行操作的符号
内容
+
-
*
/
%
转换
隐式转化
取值范围
byte<short<int<long<float<double
时机
当数据类型不一致,不能进行计算,需要转化成一样才能进行计算
转换规则
1. 取值范围小的和取值范围大的进行运算,小的会提升为大的再进行运算
2. byte&short&char三种类型数据在运算的时候,都会直接先提升为int,再进行计算
package test2; public class helloworld2 { public static void main(String[] args) { char char1 = 'a'; int number = 2; System.out.println(char1 + number); } } //99
强制转化
格式
目标数据类型 变量名 = (目标数据类型)被强制转化的数据 double a = 12.3; int b = (int)12.3;
案例
不强制转化报错
public class helloworld2 { public static void main(String[] args) { int a = 10; int b = 20; byte result = a + b;//这里语法有问题 System.out.println(result); } } 报错提示:java: 不兼容的类型: 从int转换到byte可能会有损失
强制正确案例
package test2; public class helloworld2 { public static void main(String[] args) { int a = 10; int b = 20; //byte result = (byte)a + (byte)b; byte result = (byte)(a + b); System.out.println(result); } } //结果30
字符串
规则
1. 当"+"操作出现字符串时,这个"+"时字符串连接符 "123" + 123 --> "123123"
2. 连续进行"+"操作时,从左到右逐个执行 1 + 99 + "黑马" --> "100黑马"
案例
子主题
Main Topic
Main Topic
Main Topic
主题