一篇文章带你入门Java变量及整形

 更新时间:2021年08月04日 10:15:18   作者:键盘敲烂 月薪过万  
这篇文章主要介绍了简单了解JAVA变量类型及代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

为什么需要变量

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

不论是使用哪种高价程序语言编写程序,变量都是其程序的基本组成单位。

//变量有三个基本要素(类型+名称+值)

class Test{
    public static boid main*=(String []args){
        int a = 1;  // 定义了一个变量,类型int整形,名称a,值1
        int b = 3;  // 定义了一个变量,类型int整形,名称b,值3
        b = 89;     // 把89值赋给b变量
        System.out.println(a);  // 输出a变量的值
        System.out.println(b);  // 输出b变量的值
    }
}

变量的基本原理

变量在计算机领域里等于是人。

而计算机(人)包括内存。

内存里等于是人的大脑。

根据上述的 int a = 1;

简单来说就是内存(大脑)里会分配一个空间放入a整形(a = 1)。

上述的 int b =3; b = 89;

等于是把内存(大脑)中的b整形(b = 3)替换为整形(b = 89)。

变量的介绍

变量概述

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

变量使用的基本步骤

1.声明变量

int a;

2.赋值

a = 60; // 把60赋给a

3.使用System.out.println(a); // 输出变量a

也可以一步到位[int a = 60;]通常都是一步完成的。

public class Test{  // 创建一个Test测试类
    // 编写一个main方法
    public static void main(String[] args){
        // 声明变量的第一种方式
        int a;  // 定义变量a
        a = 100;    // 将变量100赋值给变量a
        System.out.println(a);  // 输出变量a的值
        // 声明变量的第二种方式
        int b = 80; // 定义变量b,且将变量80赋值给变量b
        System.out.pringln(b);  // 输出变量b的值
    }
}

变量中常用的数据类型

基本数据类型:系统会分配固定的内存空间,一共分为八种(四形八种)。

整形

byte(字节型), short(短整形)、int(整型)、long(长整形)。默认值:long的为0l,其余为0。取值范围如下:

类型 占用存储空间 表数范围
float 4个字节 3.402823e+38 ~ 1.401298e-45
double 8个字节 1.797693e+308~ 4.9000000e-324

可以看到byte和short的取值范围比较小,而long的取值范围太大,占用的空间多,基本上int可以满足我们的日常的计算了,而且int也是使用的最多的整型类型了。

浮点型(非整数)

float(单精度浮点型)、double(双精度浮点型)。默认值:float 0.0f,double 0.0 。取值范围如下:

类型 占用存储空间 表数范围
float 4个字节 3.402823e+38 ~ 1.401298e-45
double 8个字节 1.797693e+308~ 4.9000000e-324

double型比float型存储范围更大,精度更高,所以通常的浮点型的数据在不声明的情况下都是double型的,如果要表示一个数据是float型的,可以在数据后面加上“F” 。

char型(非数值类型)

用于存放字符的数据类型,占用2个字节,采用unicode编码,它的前128字节编码与ASCII兼容 字符的存储范围在\u0000~\uFFFF,在定义字符型的数据时候要注意加' ',比如 '1'表示字符'1'而不是数值1, char c = ' 1 '; 。

boolean型(布尔型)

这个类型只有两个值,true和false(真和非真) 。

变量使用注意事项

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

基本数据类型转换

自动类型转换

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

数据类型按精度大小顺序为:

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

自动转换细节

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

强制类型转换

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

强制转换细节

  • 当数据的大小从大到小,就会使用到强制转换
  • 强转符号只针对于最近的操作数有效,往往会使用小括号提升优先级
  • char类型可以保存int的常量值,但不能保存int的变量值,需要强转
  • bute和short类型在进行运算时,当做int类型处理。

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

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

基本数据类型转String类型

将基本类型的值+""即可

String类型转基本数据类型

语法:通过基本类型的包装类调用parse方法即可

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • SpringBoot整合微信登录功能的实现方案

    SpringBoot整合微信登录功能的实现方案

    今天通过本文给大家分享微信登录与SpringBoot整合过程,微信扫描登录实现代码知道扫描后点击登录的全部过程,本文给大家介绍的非常详细,需要的朋友可以参考下
    2021-10-10
  • java虚拟机多线程进阶篇总结

    java虚拟机多线程进阶篇总结

    在本篇内容里小编给大家整理了关于java虚拟机多线程进阶篇的相关知识点内容,有兴趣的朋友们跟着参考下。
    2019-06-06
  • idea如何关闭页面显示的浏览器图标

    idea如何关闭页面显示的浏览器图标

    这篇文章主要介绍了idea如何关闭页面显示的浏览器图标问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • java使用MulticastSocket实现多点广播

    java使用MulticastSocket实现多点广播

    这篇文章主要为大家详细介绍了java使用MulticastSocket实现多点广播,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • MyBatis-Plus使用sl4j日志打印SQL的代码详解

    MyBatis-Plus使用sl4j日志打印SQL的代码详解

    以下是关于使用 Spring Boot 起始器替换 slf4j-api 和 logback 依赖的详细步骤和注意事项,包括 MyBatis-Plus 的默认日志级别信息,需要的朋友可以参考下
    2024-10-10
  • java charAt()返回数值型的使用示例

    java charAt()返回数值型的使用示例

    本文主要介绍了java charAt()返回数值型的使用示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-11-11
  • java-for循环问题

    java-for循环问题

    这篇文章主要介绍了java-for循环问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • springboot如何引入外部yml配置文件

    springboot如何引入外部yml配置文件

    这篇文章主要介绍了springboot如何引入外部yml配置文件,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • 前后端解决跨域问题的6种方案分享

    前后端解决跨域问题的6种方案分享

    很多小伙伴第一次遇到跨域问题,大概率会一脸懵逼,这篇文章小编将为大家介绍一下前后端解决跨域问题的6种方法,希望对大家有一定的帮助
    2025-03-03
  • 快速了解Java中NIO核心组件

    快速了解Java中NIO核心组件

    这篇文章主要介绍了快速了解Java中NIO核心组件,涉及相关介绍及完整实例,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12

最新评论