数据类型与变量
数据类型转换
优先级:
byte < short, char <int < long < float < double
1、强制类型转换:由高到低——(类型)变量名
2、自动转换:由低到高
Java数据类型(强类型语言,所有语言必须先定义).xmind
note:
- 不能对布尔值转换
- 不能把对象类型转换为不相干类型
- 在把大容量类型转换为低容量时——>强制转换,
- 转换时可能出现内存溢出
- 操作数据过大时注意内存溢出
int money=1000000000;
int years=20;
int total=money*years;//计算时内存已经溢出
System.out.println(total);//-1474836480
//解决?
long total1=total;
System.out.println(total1);//-1474836480//此时默认的还是int型数据所以还是不对
//应该在计算前就对数据进行转换
System.out.println(years*(long)money);//20000000000
变量
java 变量是程序中最基本的存储单元,其要素包括变量名,变量类型,作用域;
note:
每个变量都有类型,可以是数据类型也可以是引用类型,在使用前必须声明!
变量名必须合法;必须要加 ’ ;‘
type varname=value;//数据类型 变量名 = 值;
1、局部变量
在方法里的变量(写了就能用)
必须初始化!!!
public static void main(String[] args) {//main方法
//局部变量;必须声明和初始化 (写了就能用)
int i=3;
}
2、实例变量
在类里,方法之外,从属于对象
(可以不用初始化)
- 不初始化就变为该类型的默认值
- int--0; float--0.0;
- 布尔值--false,除了基本类型(8个)有对应的默认值外,其余默认值都是null
public class Demo{
//实例变量
String name;
int age;
// note:在类里面不可实现输出
public static void main(String[] args) {//main方法
//变量类型 变量名 = new demo
Demo demo = new Demo();//实例变量取出
//new demo();
System.out.println(demo.age);//调用 输出0
}
}
3、类变量
加关键字 static
(ta也从属于类) ,可直接引用!!!调用时比new 方便
与类 “同生共死”
public class Demo5{
//类变量
static double salary=2500;//int型自动转换为double型
public static void main(String[] args) {//main方法
System.out.println(salary);
}
}
4、常量变量
初始化后不可改动!!!
关键字 final
final 变量类型 常量名 = 值;
// final double Pai=3.14;
public class Demo{
static final double pai=3.14;
final static double pai1=3.14;
// 变量前的 修饰符 不区分先后顺序
public static void main(String[] args) {//main方法
System.out.println(pai);
System.out.println(pai1);
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY