变量
使用变量是为了解决问题,解决内存中的数据读取比较麻烦这一问题,因为计算机读取内存中的数据时,是通过内存地址地址来读取,内存地址很难记住,16 进制的数据,随机分配。
变量就是给内存地址取了一个别名,并且这个别名是可以由开发者自定义的。
变量是一个概念,存储在内存中,方便存取内存中的数据,可以自定义变量名,就不用去记系统分配的16进制数据了。
是程序中存储数据的基本单元。
变量三要素:
1、数据类型
2、变量名
3、变量值
如何使用变量
1、声明变量的数据类型和变量名。
计算机会根据数据类型在内存中开辟对应大小的内存空间,变量名的定义需要符合规范:
可以包含数字、字母、下划线、$,不能包含空格、运算符,不能用纯关键字命名,不能以数字开头,大小写可以混用、首字母应该小写(驼峰式命名法)userId、studentName。
int num1;
2、给内存空间赋值,该值就是变量值。
num1 = 100;
= 不是数学概念中的等号,它在这是一个赋值运算符,专门用来做赋值运算的,将等号右边值赋给等号左边。
int num1 = 100;
//加入Java开发交流君样:756584822一起吹水聊天
Java 的基本数据类型
8 种基本数据类型:byte、short、int、long、double、float、boolean、char
整数、小数、字母、单词、汉字等,可以将这些数据分为两大类:
数值类型(整数、小数)
非数值类型(字母、单词、汉字)
1 KB= 1024 byte
1 MB = 1024 KB = 10241024 byte
1 GB = 1024 MB = 102410241024 byte
1 TB = 1024 GB = 1024102410241024 byte
实际开发中常用的数据类型是 int、long、double、boolean。
案例:
用程序输出用户信息:编号 1、姓名张三、性别男、身高176、体重60.5,要求使用变量定义用户的各项基本信息,进行输出。
System.out.println(“编号:”+id); 中的 + 不是数学中的加法,在这里它用作拼接运算符,作用是将 + 左边和右边的值进行拼接,会将 + 左边/右边的非字符串类型的数据自动转为字符串,再拼接。
- 有两种含义:
1、数学中的加法运算,针对 + 两边都是数值类型。
2、拼接运算符,+ 左右两边只要有一边是字符串。
public class Test2 {
public static void main(String[] args) {
//编号、姓名、性别、身高、体重
int id = 1;
String name = "张三";
char gender = '男';
int height = 176;
float weight = 60.5f;
System.out.println("用户信息如下:");
System.out.println("编号:"+id);
System.out.println("姓名:"+name);
System.out.println("性别:"+gender);
System.out.println("身高:"+height);
System.out.println("体重:"+weight);
}
}//加入Java开发交流君样:756584822一起吹水聊天
数据类型转换
自动转换
原则上,相同的数据类型才能完成赋值运算,但是如果遇到数据类型不匹配的情况,Java 也是可以完成赋值的,只不过在赋值之前,需要进行类型转换。
小空间可以自动转为大空间,大空间不能自动转为小空间。
低精度可以自动转为高精度,高精度不能自动转为低精度。
基本数据类型的自动转换。
强制转换
当两个数据不能完成自动转换的时候,我们可以通过强制手段让其完成类型转换,这就是强制类型转换,语法
转换之后类型 变量名 = (转换之后类型) 变量名
float num3 = 10.999999f;
int num4 = (int) num3;
如果是浮点型和整型进行强制类型转换的话,必然会造成精度损失。
boolean 类型的数据与数值类型的数据不能进行转换(无论是强制还是自动)
char 类型的数据与数值类型的数据可以进行强制类型转换。
ASCII,计算机中的每个字符都有对应的一个数值来表示它,这就是字符的 ASCII 码值。