Java小白进阶笔记(2)-变量和数据类型

简介: 复习Java知识,主要是一边看**偏头痛杨**的博客,一边完成博主布置的任务。这是看[2.偏头痛杨的Java入门教学系列之变量&数据类型篇][1] 的作业

复习Java知识,主要是一边看偏头痛杨的博客,一边完成博主布置的任务。这是看2.偏头痛杨的Java入门教学系列之变量&数据类型篇 的作业:

1.Java有多少种数据类型,数据类型的分类?

两种数据类型:

  • 基本数据类型
  • 引用数据类型
    除了八种基本数据类型,其他的都是引用数据类型。

2.Java的工作机制?

Java程序的源代码(.java)编译成虚拟机(JVM)能看懂的字节码(.class),然后再由虚拟机解释执行成对应的操作系统能看懂的机器码

3.自动类型转换与强制类型转换的规则?

  • 从小到大自动转
  • 从大到小强制转

自动类型转换:

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

表达式类型的自动提升:

当表达式中有多个数据类型运算式,自动提升为容量最大的数据类型。

  • byte,short,char之间不会自动转换,首先都提升为int
  • 整个表达式的类型自动提升到与表达式中最高等级操作数同样的类型

强制类型转换:

容量大的数据类型转换为容量小的数据类型时,需要强制类型转换

  • 语法:变量 = (目标类型)值。比如,int a=(int)b;
  • 整数类型进行强制转换时会发生溢出
  • 浮点数进行强制转换时会发生精度失准
    注意
  • boolean无法转换成其他数据类型
  • char的字符被转成int,变成对应的ASCII值
  • 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入

4.什么是变量,如何定义变量?

  • 变量是指在程序的运行过程中随时可以发生变化的量,Java使用变量临时存储各种数据,是存储数据的基本单元.
  • 变量必须要先定义(声明),再初始化(也可以不初始化,有默认值),之后才能使用。必须为每个变量确定一个具体数据类型。

5.整型从小到大排序并且说出大小?

byte(1字节8位)short(2字节16位)int(4字节32位)long(8字节64位)

6.数据类型的默认值?

  • 整数型:0
  • 浮点型:0.0
  • 字符型(char):一个空的字符,即'u0000'
  • 布尔型(boolean):false
  • 引用数据类型:null,表示变量不引用任何对象

7.整型与浮点型的默认数据类型是什么?

同上。

8.基本数据类型的包装类型分别是什么?

8种基本数据类型还对应着8种包装类,包装类里有一些常见属性。基本数据类型与包装类型的初始值不同,例如int的初始值为0,
而包装类则为null。
对应关系:
byte->Byte
short->Short
int->Integer
long ->Long
float->Float
double-Double
char->Character
boolean->Boolean

9.如何定义一个常量?

  • Java中使用final关键字来修饰常量
  • 常量的字母要全部大写

基本数据类型:

final String NAME = "Jack";//无法修改NAME的值

引用数据类型:

  • 可以修改其引用对象的属性,但不可以修改对象的引用
final Person P1 = new Person();
P1.name = "Jack";
P1.name = "Rose";//It's ok!
P1 = null;//错误!不可以修改对象的引用

10.JDK&JRE&JVM分别是什么以及他们的关系?

JDk是开发集成工具,JRE是java运行环境,JVM是Javaxu'ni'j
JDK>JRE>JVM
三者关系详细见上一篇博客

目录
相关文章
|
15天前
|
Java 程序员 容器
Java中的变量和常量:数据的‘小盒子’和‘铁盒子’有啥不一样?
在Java中,变量是一个可以随时改变的数据容器,类似于一个可以反复打开的小盒子。定义变量时需指定数据类型和名称。例如:`int age = 25;` 表示定义一个整数类型的变量 `age`,初始值为25。 常量则是不可改变的数据容器,类似于一个锁死的铁盒子,定义时使用 `final` 关键字。例如:`final int MAX_SPEED = 120;` 表示定义一个名为 `MAX_SPEED` 的常量,值为120,且不能修改。 变量和常量的主要区别在于变量的数据可以随时修改,而常量的数据一旦确定就不能改变。常量主要用于防止意外修改、提高代码可读性和便于维护。
|
22天前
|
Java 编译器
Java重复定义变量详解
这段对话讨论了Java中变量作用域和重复定义的问题。学生提问为何不能重复定义变量导致编译错误,老师通过多个示例解释了编译器如何区分不同作用域内的变量,包括局部变量、成员变量和静态变量,并说明了使用`this`关键字和类名来区分变量的方法。最终,学生理解了编译器在逻辑层面检查变量定义的问题。
Java重复定义变量详解
|
18天前
|
存储 缓存 Java
大厂面试必看!Java基本数据类型和包装类的那些坑
本文介绍了Java中的基本数据类型和包装类,包括整数类型、浮点数类型、字符类型和布尔类型。详细讲解了每种类型的特性和应用场景,并探讨了包装类的引入原因、装箱与拆箱机制以及缓存机制。最后总结了面试中常见的相关考点,帮助读者更好地理解和应对面试中的问题。
41 4
|
16天前
|
存储 消息中间件 NoSQL
使用Java操作Redis数据类型的详解指南
通过使用Jedis库,可以在Java中方便地操作Redis的各种数据类型。本文详细介绍了字符串、哈希、列表、集合和有序集合的基本操作及其对应的Java实现。这些示例展示了如何使用Java与Redis进行交互,为开发高效的Redis客户端应用程序提供了基础。希望本文的指南能帮助您更好地理解和使用Redis,提升应用程序的性能和可靠性。
31 1
|
22天前
|
安全 Java 编译器
Kotlin教程笔记(27) -Kotlin 与 Java 共存(二)
Kotlin教程笔记(27) -Kotlin 与 Java 共存(二)
|
22天前
|
Java 开发工具 Android开发
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
Kotlin教程笔记(26) -Kotlin 与 Java 共存(一)
|
22天前
|
Java 编译器 Android开发
Kotlin教程笔记(28) -Kotlin 与 Java 混编
Kotlin教程笔记(28) -Kotlin 与 Java 混编
|
1月前
|
Java
通过Java代码解释成员变量(实例变量)和局部变量的区别
本文通过一个Java示例,详细解释了成员变量(实例变量)和局部变量的区别。成员变量属于类的一部分,每个对象有独立的副本;局部变量则在方法或代码块内部声明,作用范围仅限于此。示例代码展示了如何在类中声明和使用这两种变量。
|
8天前
|
Java 编译器 Android开发
Kotlin教程笔记(28) -Kotlin 与 Java 混编
Kotlin教程笔记(28) -Kotlin 与 Java 混编
10 0
|
1月前
|
存储 Java 关系型数据库
[Java]“不同族”基本数据类型间只能“强转”吗?
本文探讨了不同位二进制表示范围的计算方法,重点分析了Java中int和char类型之间的转换规则,以及float与int类型之间的转换特性。通过具体示例说明了显式和隐式转换的条件和限制。
37 0
[Java]“不同族”基本数据类型间只能“强转”吗?
下一篇
无影云桌面