2024年Java最新Java基础教程【第二章:Java数据类型和变量】_java中ps,Java面试问题集合

最后的内容

在开头跟大家分享的时候我就说,面试我是没有做好准备的,全靠平时的积累,确实有点临时抱佛脚了,以至于我自己还是挺懊恼的。(准备好了或许可以拿个40k,没做准备只有30k+,你们懂那种感觉吗)

如何准备面试?

1、前期铺垫(技术沉积)

程序员面试其实是对于技术的一次摸底考试,你的技术牛逼,那你就是大爷。大厂对于技术的要求主要体现在:基础,原理,深入研究源码,广度,实战五个方面,也只有将原理理论结合实战才能把技术点吃透。

下面是我会看的一些资料笔记,希望能帮助大家由浅入深,由点到面的学习Java,应对大厂面试官的灵魂追问

这部分内容过多,小编只贴出部分内容展示给大家了,见谅见谅!

  • Java程序员必看《Java开发核心笔记(华山版)》

  • Redis学习笔记

  • Java并发编程学习笔记

四部分,详细拆分并发编程——并发编程+模式篇+应用篇+原理篇

  • Java程序员必看书籍《深入理解 ava虚拟机第3版》(pdf版)

  • 大厂面试必问——数据结构与算法汇集笔记

其他像Spring,SpringBoot,SpringCloud,SpringCloudAlibaba,Dubbo,Zookeeper,Kafka,RocketMQ,RabbitMQ,Netty,MySQL,Docker,K8s等等我都整理好,这里就不一一展示了。

2、狂刷面试题

技术主要是体现在平时的积累实用,面试前准备两个月的时间再好好复习一遍,紧接着就可以刷面试题了,下面这些面试题都是小编精心整理的,贴给大家看看。

①大厂高频45道笔试题(智商题)

②BAT大厂面试总结(部分内容截图)

③面试总结

3、结合实际,修改简历

程序员的简历一定要多下一些功夫,尤其是对一些字眼要再三斟酌,如“精通、熟悉、了解”这三者的区别一定要区分清楚,否则就是在给自己挖坑了。当然不会包装,我可以将我的简历给你参考参考,如果还不够,那下面这些简历模板任你挑选:

以上分享,希望大家可以在金三银四跳槽季找到一份好工作,但千万也记住,技术一定是平时工作种累计或者自学(或报班跟着老师学)通过实战累计的,千万不要临时抱佛脚。

另外,面试中遇到不会的问题不妨尝试讲讲自己的思路,因为有些问题不是考察我们的编程能力,而是逻辑思维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

}


代码解析:  
 1) i:表示变量,可变的量;  
 2) 100:字面量,变量中存放的具体数据;


### 2.2 变量的命名


(1)首字母是英文字母、$或下划线,后面由字母、数字、 $、下划线组成;


(2)变量的命名遵循见名知义的原则。


String name = “jack”; //姓名  
 int age = 25; //年龄


(3)Java 变量名建议不用中文。 (使用中文并没有语法错误)


(4)变量名首字母建议不用大写字母。


(5)用驼峰命名法命名多个单词组成的变量名。


String userName = “admin”;


(6)变量名不能使用关键字


![在这里插入图片描述](https://img-blog.csdnimg.cn/20210123131855852.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyMjU3NjY2,size_16,color_FFFFFF,t_70)


### 2.3 注意点


(1)true、false 和 null 为小写,而不是象在 C++语言中那样为大写。


(2)无 sizeof 运算符,因为所有数据类型的长度和表示是固定的,与平台无关,不是象在 C 语言中那样数据类型的长度根据不同的平台而变化。这正是 Java 语言的一大特点。


(3)goto(保留字)和 const 不是 Java 编程语言中使用的关键字。


### 2.4变量的定义


类型 变量名 1,变量名 2…变量名 n;



int a,b,c;


### 2.5.变量的初始化


变量名=字面量  
 字面量可以是具体数值,也可以是返回数组的表达式;


### 2.6 变量的作用域


1、 Java 用一对大括号作为语句块的范围,称为作用域。  
 2、作用域中的变量不能重复定义。  
 3、离开作用域,变量所分配的内存空间将被 JVM(GC 垃圾会是机制)回收。


## 3. 数据类型-基本数据类型


学习Tips:可以将基本数据类型理解为一个个已经有固定大小的盒子,而 JAVA 程序在执行的过程中需要将用的数据存放在指定的大小的盒子中。


### 3.1 整数型


![在这里插入图片描述](https://img-blog.csdnimg.cn/2021012313235842.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyMjU3NjY2,size_16,color_FFFFFF,t_70)  
 PS:在给 long 类型赋值的时候,如果值大于 2^31-1,那么需要在字面量后面加上 L,不区分大小写,因为 java中默认将输出作为 int 类型来计算。


### 3.2 浮点型


1)浮点类型用于表示小数的数据类型。


2)浮点数原理:也就是二进制科学计数法。


3)Java 的浮点类型有 float 和 double 两种。


4)Java 默认浮点类型计算的结果是 double 类型,字面量也是 double 类型。


#### 3.2.1 float:单精度浮点型


1)float 类型共 32 位,1 位为符号位, 指数 8 位, 尾数 23 位。


2)float 的精度是 23 位(即能精确表达 23 位的数,超过就被截取了)。


3)小数是以尾数长度来表示精确度的,比如 pi=3.1415 的精度是 4 位。


4)float 存储数据的范围大于 int 类型,但精度比 int 要小,因为 int 的精度是 31 位。


5)浮点型的取值范围:



System.out.println(Float.MAX_VALUE);
System.out.println(Float.MIN_VALUE);


6)定义浮点型并初始化,字面量后面需要加上 F,不区分大小写



float f = 10.98f;


#### 3.2.2 double:双精度浮点


1)double 类型,1 位符号位,11 位指数,52 位尾数。


2)double 范围远远大于 long,但 double 精度不如 long。 3)定义 double 类型并初始化,字面量需要加上 D,不区分大小写



double d = 98.99d;


PS:注:浮点运算就是实数运算,由于计算机只能存储整数,所以实数都是约数,这样浮点运算是很慢的而且会有误差。


### 3.3 字符型:char


1)char 类型的字面量可以是一个英文字母、字符或一个汉字,并且由单引号包括。


2)Java 底层使用一个 16 位的整数来处理字符类型,该数值是一个字符的 unicode 编码值。


3)unicode


a、unicode 编码是全球范围内的编码方法。


b、unicode 编码的英文部分与 ASCII 码兼容(ASCII 表示范围 0~128), 同时英文字符和数字是连续编码的。


c、Java 在处理 char 类型的数据时,在底层是按 unicode 码来处理的。


d、编码是什么?计算机硬件系统只能用 0 和 1 表示数,我们人为地做了规定,某个数还可以表示一个字符。


例如:65 代表的字符是 A


4)转义字符:”\”


转义字符是”\”,通过转义字符,可表示一些特殊的字符。 或者将本身具有特殊含义的字符的特殊含义取消。例如:



‘\n’ 表示回车
‘\t’ 表示制表位字符,一个制表符表示向右跳 8-10 个字符
‘\’ 表示\ ‘’ ’ 表示单引号
‘"’ 表示双引号


### 3.4 布尔型:boolean


1、什么是布尔类型 : boolean 类型用来表示肯定或否定两种可能。  
 2、为什么使用布尔类型? 布尔类型常用在分支语句、循环语句中。  
 3、boolean 类型的值有两个: true:表示肯定意义;false:表示否定意义;  
 4、布尔变量的定义 boolean isPass;  
 5、布尔变量的初始化 boolean isPass=true; isPass=59>=60;


## 4. 基本数据类型转换


### 4.1小类型向大类型的转换


1. 小类型向大类型的转换会自动完成,即不需要程序员编写额外的代码,由 JVM 负责。提示:自动类型转换也叫"隐式类型转换"。
2. 自动转换的规则:符号位会自动扩展, 负数补 1, 正数补 0。
3. 自动类型转换包含以下情况:


(1)byte->short->int->long->float->double


(2)int 和 char 类型的数据在某些情况下可以自动相互转换。


PS:小类型向大类型转换一般情况下是安全的。当小类型的精度高于大类型时要注意精度丢失的隐患。



int i = 0x10000001;
float f = i;
System.out.println(i);// 268435457
System.out.println(f);// 2.68435456E8


### 4.2 大类型向小类型的转换


1、强转类型转换-简称强转


2、强制类型转换时,要注意边界数风险问题



int i =129;

最后

针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

最新整理面试题
在这里插入图片描述

上述的面试题答案都整理成文档笔记。也还整理了一些面试资料&最新2021收集的一些大厂的面试真题

最新整理电子书

在这里插入图片描述

最新整理大厂面试文档

在这里插入图片描述

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

最新2021收集的一些大厂的面试真题

最新整理电子书

[外链图片转存中…(img-eMYn9zjd-1714915029071)]

最新整理大厂面试文档

[外链图片转存中…(img-ZLignaw0-1714915029071)]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 15
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值