A Spock Blog.|

SpockC

园龄:3年8个月粉丝:0关注:0

📂Java
🔖Java
2022-01-08 20:36阅读: 20评论: 0推荐: 0

01 - Java中的变量

一、变量的组成:

类型+名称+值

int a = 1;

二、变量的使用步骤

  1. 声明变量 int a;

  2. 赋值

     a = 60; //应该这么说: 把 60 赋给 a
     //也可以一步到位
     int a = 60; 通常我们是一步完成
     使用 System.out.println(a);
    

三、变量使用的注意事项

	变量表示内存中的一个存储区域 [不同的变量,类型不同,占用的空间大小不同,比如: int 4个字节,double 就是8个字节]
	该区域有自己的名称 [变量名] 和类型 [数据类型]
	变量必须先声明,后使用,即有顺序
	该区域的数据/值可以在同一类型范围内不断变化
	变量在同一个作用域内不能重名
	变量 = 变量名 + 值 + 数据类型,这一点请大家注意。变量三要素

四、数据类型

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

1)java 数据类型分为两大类:基本数据类型,引用类型
2)基本数据类型 有 8 种数值型 [byteshortintlongfloatdoublecharboolean
3)引用类型 [类,接口, 数组]

1.整数类型

类 型 占用存储空间 范围
byte[字节] 1字节 -128~127
short[短整型] 2字节 -32768~32767
int[整形] 4字节 -2147483648~2147483647
long[长整型] 8字节 -2^63 ~ 2^63-1

整形的使用细节

  1. Java各整数类型有固定的范围和字段长度,不受具体OS[操作系统]的影响,以保证java程序的可移植性。
  2. Java的整型常量(具体值)默认为int型,声明long型常量须后加‘l’或‘L’。
  3. java程序中变量常声明为int型,除非不足以表示大数,才使用long。
  4. bit:计算机中的最小存储单位。byte:计算机中基本存储单元,1byte = 8 bit。

2.浮点类型

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

浮点类型的使用细节

  1. 与整数类型类似,Java浮点类型也有固定的范围和字段长度,不受具体OS的影响。[float 是 4 个字节 double是 8 个字节]
  2. Java的浮点型常量(具体值)默认为double型,声明float型常量,须在值后面加‘f’‘F'
  3. 浮点型常量有两种表示形式
    十进制数形式: 如: 5.12 512.0f .512(必须有小数点)
    科学计数法形式: 如: 5.12e2 [5.12*10的2次方] 5.12E-2[5.12/10的2次方]
  4. 通常情况下,应该使用 double类型,因为它比 float类型更精确。
  5. 浮点数使用陷阱: 2.78.1/3 比较值是否相等

3.字符类型

  • 字符类型可以表示单个字符,字符类型是 charchar 是两个字节(可以存放汉字)

      //例如
      char c1 = 'a';
      char c2 = '\t';
      char c3 = '你';
      char c4 = 97;
    
  1. 字符常量是用单引号''括起来的单个字符。

    例如: char c1 = 'a';
    char c2 = '中';
    char c3 = '9';

  2. Java中还允许使用转义字符''来将其后的字符转变为特殊字符型常量。

    例如: char c3 = '\n';
    '\n' 表示换行符

  3. 在Java中,char 的本质是一个整数,在输出时,是 Unicode码对应的字符。

  4. 可以直接给char赋一个整数,然后输出时,会按照对应的 Unicode 字符输出。

  5. char类型是可以进行运算的,相当于一个整数,因为它都对应有 Unicode码。

字符串广泛应用在 Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。

  1. 创建字符串最简单的方式如下:
    String str = "spock";
  2. 用构造函数创建字符串:
    String str2 = new String("Runoob");

4.布尔类型

  • 布尔类型也叫boolean类型,boolean类型数据只允许取值 true 和 false,没有null值。
  • boolean类型占一个字节。
  • boolean类型适用于逻辑运算,一般用于程序流程控制。
public class Boolean01 { 
	//编写一个 main 方法 
	public static void main(String[] args) {
		//演示判断成绩是否通过的案例
		//定义一个布尔变量
		boolean isPass = true;// 
		if (isPass == true) { 
			System.out.println("考试通过,恭喜");
		} else {
			System.out.println("考试没有通过,下次努力");
		}
	} 
}

五、基本数据类型转换

自动类型转换

当Java程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数据类型,这个转换过程称为自动类型转换。

- 数据类型按照精度大小排序,其转换规则如下:

char --> int --> long --> float --> double
byte --> short --> int --> long --> float --> double

- 注意事项

有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。
当我们把精度(容量)大的数据类型赋值给精度(容量)小的数据类型时,就会报错,反之就会进行自动类型转换。
(byte, short) 和 char 之间不会相互自动转换。
byteshortchar他们三者可以计算,在计算时首先转换为int类型。
boolean不参与转换。
自动提升原则:表达式结果的类型自动提升为操作数中最大的类型

强制类型转换

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

- 注意事项:

当进行数据的大小从大-->小,就需要使用到强制转换。
强转符号只针对于最近的操作数有效,往往会使用小括号提升优先级。
	//int x = (int)10*3.5+6*1.5;
	int y = (int)(10*3.5+6*1.5);
char类型可以保存int的常量值,但不能保存int的变量值,需要强转
	char c1 = 100;
	int a = 100;
	char c2 = a; //报错
	char c3 = (char)a; //强制转换后ok
byteshort, char类型在进行运算时,当做int类型处理。

六、基本数据类型和 String 类型的转换

在程序开发中,我们经常需要将基本数据类型转成String类型。或者将String类型转成基本数据类型。

- 基本数据类型转String类型

语法:将基本类型的值 + “” 即可。

int a = 100;
float b = 20.0f;
String str1 = a + "";
String str2 = b + "";

- String类型转基本数据类型

语法:通过基本数据类型的包装类调用parseXXX方法

Integer.parseInt("123");
Double.parseDouble("20.1");

注:本博客引用韩顺平老师Java课程

本文作者:SpockC

本文链接:https://www.cnblogs.com/SpockC/p/15779502.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   SpockC  阅读(20)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起