Java基础
Java注释
-
注释并不会被执行,是给我们写代码的人看的
-
书写注释是一个非常好的习惯
-
平时写代码一定要注意规范
-
注释种类:单行注释、多行注释、文档注释
-
单行注释 //+注释
-
多行注释 / * 多行注释 * /
-
文档注释 /** * * */
-
标识符
-
所有标识符都应该以字母(A-Z或者a-z),美元符($),或者下划线(_)开始
-
首字符之后可以是字母(A-Z或者a-z)、美元符($),或者下划线(_)或数字的任何字符组合
-
不能使用关键字作为变量名或方法名
-
标识符是大小写敏感的
-
可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很low
! !! ! 命名方式:String 标识符=("命名"); !!!!!!!(字符串)
数据类型
-
强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
-
弱类型语言:
-
Java的数据类型分为两类
-
基本类型
-
引用类型(reference type)
-
-
八大数据类型
-
//整数
int num1 =10;//最常用
byte num2 =20;
short num3 =30;
long num4 =40L;//Long类型要在数字后面加个L
//小数:浮点数
float num5 =50.1F;//float类型要在数字后面加个F
double num6 =60.2;
//字符
char name='航';
//字符串, String不是关键字,是 类
String NAME="姚宇航";
//布尔值(只有TRUE和FALSE)
boolean flag=true;
boolean Flag=false; -
判断对错 "=="
字节
-
位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。
-
字节(byte):是计算机中数据处理的基本单位,习惯上用大写B来表示。
-
1B(byte 字节)=8bit(位)
-
字符:是指计算机中使用的字母、数字、字的符号。
-
1bit表示1位
-
1Byte表示一个字节 1B==8b
-
1024B=1KB
-
1024KB=1MB
-
1024M=1G
-
拓展
-
进制
-
二进制 以 0b 开头
-
八进制 以 0 开头
-
十进制
-
十六进制 以 0x 开头
-
-
浮点数:
存在舍入误差
//浮点数//float 舍入误差
float d=0.1f;//0.1
double e=0.1;//0.1
System.out.println(d);//0.1
System.out.println(e);//0.1
System.out.println(d==e);//false
float f=56355474578f;
float g=f+1;
System.out.println(f==g);//true
最好完全使用浮点数进行比较
BigDecimal 数学工具类
-
字符:
-
字符
//字符
char h='A';
char i='航';
System.out.println(h);//输出 A
System.out.println((int)h);//强制转换//输出97
System.out.println(i);//输出 航
System.out.println((int)i);//强制转换//输出33322
//所有的字符本质还是数字
// Unicode 编码(表) 占用2个字节, 最多可表示65536个字符
//Excel 最长就是2的16次方=65536
char j='\u0061';
System.out.println(j);//输出 a
Unicode表内字符与数字一一对应
//Unicode表内:U0000--UFFFF
-
转义字符:
-
\t 制表符
-
\n 换行符
-
\b 退格
-
\f 换页
-
\r 换页
-
\\ 回车(将当前位置移动到下一行开头)
-
\0 空字符
-
\ ' 代表一个单引号
-
\ " 代表一个双引号
-
\? 代表一个问号
-
//转义字符
// "\t" 制表符
// “\n" 换行符
// "\b" 退格
// "\f" 换页
// "\r" 回车(将当前位置移动到下一行开头)
// "\\" 代表一个\
// "\0" 空字符
// "\"" 代表一个双引号"
System.out.println("hello\tworld");
System.out.println("hello\nworld");
System.out.println("hello\bworld");
System.out.println("hello\fworld");
System.out.println("hello\rworld");
System.out.println("hello\\world");
System.out.println("hello\0world");
System.out.println("hello\"world");
-
// 补充
String a1= new String("hello home");
String a2= new String("hello home");
System.out.println(a1==a2);//false
String b1="hello home";
String b2="hello home";
System.out.println(b1==b2);//true -
布尔值:
boolean flag=true;
if (flag==true){} //新手
if (flag){} //老手
// less is more! 代码要精简易读!
类型转换
-
由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换
-
运算中 不同类型的数据先转化为同一类型,然后再进行运算
-
强制转换 (类型)变量名 由高到低
-
自动转换 由低到高
-
-
注意:
-
不能对布尔值进行转换
-
不能把对象类型转换为不相干的类型
-
在把高容量转换到低容量的时候,强制转换
-
转换的时候可能存在内存溢出,或者精度问题
-
-
//操作比较大的数的时候,注意溢出问题
//JDK的新特性 数字之间可以用下划线分割(结果不会输出下划线)
int money =10_0000_0000;
System.out.println(money);//输出1000000000(不带有下划线)
//溢出:
int years=20;
int total=money*years;//=200_0000_0000
System.out.println(total);//int结果。
long total2=money*years;
System.out.println(total2);//默认是int,转换之前已经存在问题了
long total3=money*((long)years);//提前把years转换为long形式
System.out.println(total3);//输出200_0000_0000
变量
-
变量就是变化的量!
-
Java是一种强类型语言,每个变量都必须声明其类型
-
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
-
注意事项
-
每个变量都有类型,类型可以是基本类型,也可以是引用类型
-
变量名必须是合法的标识符
-
变量声明是一条完整的语句,因此每一个声明都必须以分号结束
-
变量作用域
-
类变量
-
实例变量
-
局部变量
public class Variable{
static int allClicks=0;//类变量
String str="hello world";//实例变量
public void method(){
int i =0; //局部变量
}
}
常量
-
初始化(initialize)后不能再改变值!不会变动的值。
-
所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。 //final 常量名=值;
//final double PI=3.14;
-
常量名一般使用大写字符。
变量的命名规范!!!
-
所有变量、方法、类名:见名知意
-
类成员变量:首字母小写和驼峰原则:monthSalsry //除了第一个单词以外,后面的单词首字母大写 lastName
-
局部变量:首字母小写和驼峰原则
-
常量:大写字母和下划线:MAX_VALUE
-
类名:首字母大写和驼峰原则:Man,GoodMan
-
方法名:首字母小写和驼峰原则:run(), runRun()
运算符
-
算术运算符:+,-,*,/,%(模运算:取余),++,--
//算术运算符
int a=10;
int b=15;
int c=20;
int d=25;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/(double)b);
long e=12332112321l;
int f=123;
short g=10;
byte h=8;
System.out.println(e+f+g+h);//long
System.out.println(f+g+h);//int
System.out.println(g+h);//int
//++ 自增 -- 自减
//一元运算符
int a=3;
System.out.println(a);
int b=a++;//执行完这行代码后,先给b赋值,再自增
System.out.println(a);
System.out.println(b);
int c=++a;//执行完这行代码前,先自增,再给b赋值
System.out.println(a);
System.out.println(b);
System.out.println(c);
-
赋值运算符:=
-
关系运算符:>,<,>=,<=,==(判断是否等于),!=(不等于),instanceof
//关系运算符:TRUE or false
int x=10;
int y=20;
int z=21;
System.out.println(x>y);
System.out.println(x<y);
System.out.println(x==y);
System.out.println(x!=y);//不等于
System.out.println(z%x);//取余数 模运算 -
逻辑运算符:&&(与),||(或),!(非)
-
位运算符:&,|,^,~,>>,<<,>>>
-
条件运算符:?:
-
扩展赋值运算符:+=,-=,*=,/=
快捷键 Ctrl+D:复制当前行到下一行
-
运算中有long类型,结果为long类型;没有long类型,则结果为int类型
-
幂运算:
//幂运算 2^3 2*2*2=8 很多运算 我们会使用一些工具类来操作
double pow = Math.pow(2,3);
System.out.println(pow);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现