为什么需要变量
- 变量是程序的基本组成单位
不论是使用那种高级程序语言编写程序,变量都是其程序的基本组成单位
基本三要素:
- 类型
- 名称
- 值
- 简单的原理示意图
变(变化)量(值)的介绍
概念:变量相当与内存中一个数据存储空间的表示,你可以把变量看作是一个房间的门牌号,通过门牌号我们可以找到房间,而通过变量名可以访问到变量(值)
- 声明变量的步骤
- 声明变量 int a;
- 赋值 a = 1;
- 打印输出 System.out.println(a);
- 也可以一步到位 int a = 1;
变量快速入门
变量使用入门案例
看演示并对代码进行说明,演示记录,人的信息的代码
//定义变量 int age = 20; double score = 88.6; char gender = '男'; String name = "张三"; //输出信息 System.out.println("人的信息如下:"); System.out.println("年龄:" + age); System.out.println("分数:" + score); System.out.println("性别:" + gender); System.out.println("姓名:" + name);
变量使用注意事项
- 变量表示内存中的一个存储区域【不同的变量,类型不同,占用的空间大小不同,比如,int 四个字节 double 就是八个字节】
- 该区域有自己的名称【变量名】和类型【数据类型】
- 变量必须先声明,后使用
- 该区域的数据可以在同一类型范围内不断变化
- 变量在同一个作用域内不能重名
- 变量 = 变量名 + 值 + 数据类型,这一点大家注意,变量三要素
- 当左右两边都是数值类型时,则做加法运算
- 当左右两边有一方为字符串,则做拼接运算
-
java数据类型
-
一:基本数据类型
-
数值型
-
整数类型,存放整数
- byte[1]
- short[2]
- int[4]
- long[8]
-
浮点(小数)类型
- float[4]
- double[8]
-
字符型
- char[2],存放单个字符 'a’
-
布尔型
- boolean[1],存放true false
-
-
-
二:引用数据类型
- 类(class)
- 接口(interface)
- 数组([])
-
整数类型
- java各整数类型有固定的范围和字段长度,不受具体os( *** 作系统)的影响,以保证java程序的可移植性
- java的整型常量默认为int型,声明long型常量需后加 l 或 L
- java程序中变量常声明为int型,除非不足以表示大数,才使用long
- bit:计算机中的最小存储单位,byte:计算机中最基本存储单元, 1 byte = 8 bit.
字符类型(char)
-
基本介绍:字符类型可以表示单个字符,字符类型是char,char是两个字节(可以存放汉字),多个字符我们用字符串String
-
char c1 = 'a'; char c2 = 't'; char c3 = '韩'; char c4 = 97;
-
字符类型使用细节
- 字符常量是用单引号(’’)括起来的单个字符
- java中还允许使用转义字符’'来将其后的字符转变为特殊字符型常量
- 在java中,char的本质是一个整数,在输出时,是unicode码对应的字符(http://tool.chinaz.com/Tools/Unicode.aspx)
- 可以直接给char赋一个整数,然后输出时,会按照对应的unicode字符输出【97】
- char类型是可以进行运算的,相当于一个整数,因为它都对应有unicode码
-
字符类型本质探讨
- 字符型存储到计算机中,需要将字符对应的码值(整数)找出来,比如’a‘
- 存储:’a‘ ==>码值97 ==>二进制 ==> 存储
- 读取:二进制 ==> 97 ==> ‘a’ ==> 显示
- 字符和码值的对应关系是通过字符编码表决定的(是规定好的)
- 介绍一下字符编码表
- ASCII(ASCII编码表 一个字节表示,一个128个字符)
- unicode(unicode编码表固定大小的编码,使用两个字节来表示字符,字母和汉字统一都是占用两个字节,这样很浪费空间)
- utf-8(编码表,大小可变的编码 字母使用1个字节 汉字使用三个字节)
- gbk(可以表示汉字,而且范围广,字母使用一个字节,汉字使用三个字节)
- gb2312(可以表示汉字,gb2312 < gbk)
- big5码(繁体中文,台湾,香港)
- 介绍一下字符编码表
- 字符型存储到计算机中,需要将字符对应的码值(整数)找出来,比如’a‘
布尔类型:boolean
-
基本介绍
-
布尔类型也叫boolean类型,boolean类型数据只允许值true和false,无null
-
boolean类型占一个字节
-
boolean类型使于逻辑运算,一般用于程序流程控制
-
if条件控制语句;
-
while循环控制语句;
-
do…while循环控制语句
-
for循环控制语句
-
boolean deflag = true; if(deflag){ 语句1 }else{ 语句2 }
-
-
基本数据类型转换
-
自动类型转换
- 当java程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数据类型,这个就是自动类型转换
- 数据类型按精度(容量)大小排序
-
强制类型转换
- 自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据类型,使用时要加上强制转换符(),但可能造成精度降低或溢出,要格外注意
-
基本数据类型转换
-
强制类型转换细节说明
-
当进行数据的大小 从大 -------> 小,就需要使用到强制转换
-
强转符号只针对于最近的 *** 作数有效,往往会使用小括号提升优先级
-
//int x = (int) 10 * 3.5 + 5 * 1.5; int x = (int)( 10 * 3.5 + 5 * 1.5);
-
char类型可以保存int的常量值,但不能报错int的变量值,需要强转
-
byte和short类型在进行运算时,当作int类型处理
-
-
-
基本数据类型和String类型的转换
- 在程序开发中,我们经常需要将基本数据类型转换成String类型。或者将String类型转换成基本数据类型
- 基本类型转String类型
- 语法:将基本类型的值 + “” 即可
- String类型转基本数据类型
- 语法:通过基本类型的包装类调用parseXX方法即可
- 注意事项
- 在将String类型转换成基本数据类型时,要确保String类型能够转成有效的数据,比如,我们可以把“1243”转成一个整数,但不能把“hello”转成一个整数
- 如果格式不正确,就会抛出异常,程序就会终止
package com.company.hello.change; import com.sun.deploy.util.StringUtils; public class IntDetail { public static void main(String[] args) { int n1 = 10; // float d1 = n1 + 1.1; 错误,结果类型时double double d1 = n1 + 1.1; float d2 = n1 + 1.1F;//对 int i = (int) 1.9; System.out.println(i); int j = 100; byte b1 = (byte) j; System.out.println(b1); //基本数据类型转字符串 int a = 1; String b = a + ""; String c = String.valueOf(a); //字符串转基本数据类型 int i1 = Integer.parseInt(b); double v = Double.parseDouble(c); } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)