Java学习笔记(二)变量原理、常用编码、类型转换

Hi i,m JinXiang


⭐ 前言 ⭐

本篇文章主要介绍Java变量原理、常用编码、类型转换详细使用以及部分理论知识


🍉欢迎点赞 👍 收藏 ⭐留言评论 📝私信必回哟😁

🍉博主收将持续更新学习记录获,友友们有任何问题可以在评论区留言


目录

1、变量原理

1.1、变量的介绍

1.1.1、变量的三个基本要素

1.1.2.、变量的基本原理[示意图]

1.1.3、变(变化)量(值)的概念

1.1.4、变量使用的基本步骤(三步骤)

1.1.5、变量使用注意事项

1.2、+号的使用

1.3、数据类型

1.3.1、整数的类型

1.3.1.1、整型的使用细节IntDetail.java

1.3.2、浮点类型

浮点型基本介绍

浮点型的分类

浮点型使用细节FloatDetail.java

2、常用编码

字符编码表

UTF-8编码介绍

ASCII码介绍

Unicdode编码介绍

3、基本数据类型转换

3.1、自动类型转换

3.1.1、自动类型转换需要注意的细节        

3.2、强制类型转换

3.2.1、强制类型转换的细节

3.3、基本数据类型和String转换

3.3.1、基本数据类型和String转换的注意事项

4、本章作业


1、变量原理

1.1、变量的介绍

变量是程序的基本组成单位

1.1.1、变量的三个基本要素

  • 类型
  • 名称

1.1.2.、变量的基本原理[示意图]

1.1.3、变(变化)量(值)的概念

变量相当于内存中一个数据存储空间的表示,我们可以把变量看做是一个房间的门牌号,通过门牌号我们可以找到房间,而通过变量名可以访问到变量(值)

1.1.4、变量使用的基本步骤(三步骤)

  1. 声明变量   int a;
  2. 赋值   a = 60;
  3. 使用System.out.pringln(a);打印输出
  4. 也可以一步到位[ int  a  =  60 ]

1.1.5、变量使用注意事项

1、变量表示内存中的一个存储区域【不同的变量,类型不同,占用空间大小不同】

2、每个区域有自己的名称 【变量名】和类型【数据类型】

3、变量必须先声明,后使用

1.2、+号的使用

  • 1、当左右两边都是数值型时,则做加法运算
  • 2、当左右两边有一方为字符串,则做拼接运算
  • 3、运算顺序,是从左到右

1.3、数据类型

每一种数据都定义了明确的数据类型,在内存中分配了不同大小的内存空间)(字节)

上图说明(背)!!

  • 1、Java数据类型分为两大类 【数据类型】和【引用类型】
  • 2、基本数据类型有8种【byte,short,int,long,float,double,】char,boolean
  • 3、引用类型【类,接口,数组】

1.3.1、整数的类型

Java的整数类型就是用于存放整数值的,例如:1,520,131,666

类型占用存储空间范围
byte[字节]1字节-128~127
为啥存放的范围是这个=>二进制
short[短整型]2字节
int[整型]4字节
long[长整型]8字节
1.3.1.1、整型的使用细节IntDetail.java
  • 1、 Java各整数类型有固定的范围和字段长度,不受具体OS[操作系统]的影响
           以保证java程序的可移植性。
  • 2.、Java的整型常量(具体值)默认为int型,声明long型常量须后加代或‘L
  • 3、 java程序中变量常声明为int型,除非不足以表示大数,才使用long
  • 4、bit:计算机中的最小存储单位。byte:计算机中基本存储单元,1byte = 8 bit

1.3.2、浮点类型

浮点型基本介绍

浮点类型可以表示一个小数,例如:1.34、4.3、65.9

浮点型的分类
类型占用存储空间范围
单精度float4字节-3.403E38~3.403E38
双精度double8字节-1.798E308~1.798E308
浮点型使用细节FloatDetail.java
  • 1) 关于浮点数在机器中存放形式的简单说明,浮点数=符号位+指数位+尾数位
  • 2) 尾数部分可能丢失,造成精度损失(小数都是近似值)

2、常用编码

字符编码表

  • ASCII (ASCII编码表一个字节表示,一个128个字符,实际上一个字节可以表示256个字符,只用128个)
  • Unicode (Unicode编码表固定大小的编码使用两个字节来表示字符,字母和汉字统一都是占用两个字节,这样浪费空间) 编码表一个字节表示,一个Ⅱ(ASCII个字符,实际上一个字节可以表示128个字符,实际上一个字节可以表示256个字符,只用128个)
  • utf-8(编码表,大小可变的编码字母使用1个字节,汉字使用3个字节)
  • gbk(可以表示汉字,而且范围广,字母使用1个字节,汉字2个字节)
  • gb2312(可以表示汉字,gb2312< gbk)
  • big5码(繁体中文,台湾,香港)

UTF-8编码介绍

ASCII码介绍

Unicdode编码介绍

3、基本数据类型转换

3.1、自动类型转换

3.1.1、自动类型转换需要注意的细节        

1、有多种类型的数据混合运算时,系统首先将所有数据转换成容量最大的那种数据类型,然后再进行计算。

2、当我们把精度(容量)大的数据类型赋值给精度(容量)小的数据类型时,就会报错,反之就会进行自动类型转换。

3、(byte,short)和char之间不会相互自动转换

4、byte,short,char 他们三者可以计算,在计算时首先转换为int类型

5、boolean  不参与转换

6、自动提示原则:表达式结果的类型自动提示为 操作数中最大的类型

3.2、强制类型转换

自动类型转换的逆过程, 将容量大的数据类型转换为容量小的数据类型
使用时要加上强制转换符 ( ) ,但可能造成 精度降低或溢出 , 格外要注意。

3.2.1、强制类型转换的细节

3.3、基本数据类型和String转换

public class StringToBasic {
//编写一个 main 方法
public static void main(String[] args) {
//基本数据类型->String
int n1 = 100;
float f1 = 1.1F;
double d1 = 4.5;
boolean b1 = true;
String s1 = n1 + "";
String s2 = f1 + "";
String s3 = d1 + "";
String s4 = b1 + "";
System.out.println(s1 + " " + s2 + " " + s3 + " " + s4);
//String->对应的基本数据类型
String s5 = "123";
//会在 OOP 讲对象和方法的时候回详细
//解读 使用 基本数据类型对应的包装类,的相应方法,得到基本数据类型
int num1 = Integer.parseInt(s5);
double num2 = Double.parseDouble(s5);
float num3 = Float.parseFloat(s5);
long num4 = Long.parseLong(s5);
byte num5 = Byte.parseByte(s5);
boolean b = Boolean.parseBoolean("true");
short num6 = Short.parseShort(s5);
System.out.println("===================");
System.out.println(num1);//123
System.out.println(num2);//123.0
System.out.println(num3);//123.0
System.out.println(num4);//123
System.out.println(num5);//123
System.out.println(num6);//123
System.out.println(b);//true
//怎么把字符串转成字符 char -> 含义是指 把字符串的第一个字符得到
//解读 s5.charAt(0) 得到 s5 字符串的第一个字符 '1' System.out.println(s5.charAt(0));
}
}

3.3.1、基本数据类型和String转换的注意事项

  • 1、在将 String 类型转成 基本数据类型时,比如 我们可以把 "123" , 转成一个整数,但是不能把 "hello" 转成一个整数
  • 2、 如果格式不正确,就会抛出异常,程序就会终止, 这个问题在异常处理章节中,会处理
/**
* 演示字符串转基本数据类型的细节
*/
public class StringToBasicDetail {
//编写一个 main 方法
public static void main(String[] args) {
String str = "hello";
//转成 int
int n1 = Integer.parseInt(str);
System.out.println(n1);
}
}

4、本章作业

看完点赞~人美心善!❤️❤️❤️

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值