首页 > 编程语言 >java变量定义与数据类型

java变量定义与数据类型

时间:2024-08-21 21:27:06浏览次数:11  
标签:类型转换 java 变量 int 数据类型 byte

变量:在java程序运行过程中,其值可以发送改变的量
定义变量的语句格式:
数据类型 变量名 = 初始化值;
使用变量的注意事项
1、使用基本数据类型的变量,实际上使用的是变量中存储的值
2、在同一作用域(同一个大括号)中,变量名不能重复
3、变量名是区分大小写的
4、java中整数默认是int类型
5、如果要定义一个long类型的变量,需要在值的后面加上l或者L,推荐使用L
6、java中小数默认是double类型
7、如果要定义一个float类型的变量,需要在值的后加上f或者F,推荐F
8、定义一个变量,占用一行,分号结尾
9、所有的未初始化变量,都无法直接使用,建议在定义的同时给一个默认值
10、java是强类型语言,变量一旦确定了数据类型,后续赋值的时候,就只能赋值该范围内的值。

Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型

不同的数据类型所表示的范围大小,占用空间不一样


1、java中变量参与运算会先根据自动类型转换提升数据类型,然后再运算

char i = '2'+2;

2、java中常量之间运算,会先进行运算,再根据运算的结果看一看在不在目标数据类型范围内,如果在,就直接赋值

float f = 11.1F;
double b= 255.0;
short s1 = 1;

3、一般情况下,等号右边的数据类型应该小于左边的数据类型,反之,需要将右边进行强制类型转换

 byte b1=3,b2=4,b ;
 b= (byte) (b1 + b2);

默认转换
byte,short,char—int—long—float—double
byte,short,char相互之间转换,他们参与运算首先转换为int类型
整数默认:int 小数默认:double

        int a1 = 3;
        byte b1 = 4;
        int c1 = a1 + b1;
        System.out.println(c1);
System.out.println('a' + 1 + "hello"); // 98hello

强制转换
目标类型 变量名=(目标类型)(被转换的数据);
注意:强制类型转换,一般不推荐使用,因为可能会造成精度损失

byte b = (byte)130;
System.out.println(b); //-126
//因为byte的范围在-128-127之间,130>127
//所以需要将130进行强制类型转换,由int型变成byte型
//首先,130对应二进制编码为:00000000 00000000 00000000 //10000010,同时原码,反码和补码也是他们本身
//在强制转换之后:1 0000010 最高位即符号位是1,说明该数是一个负//数,则其对应反码和补码为1 0000001(补码数值位减一,符号位不变),
//1 1111110(反码数值位按位取反,符号位不变),将数值位转成十进制为
//64+32+16+8+4+2 = 126,则最终答案是-126
//由上可知:强制类型转换后,精度减少了12位

图例展示精度问题

标签:类型转换,java,变量,int,数据类型,byte
From: https://www.cnblogs.com/zhuzhuya/p/18372484

相关文章

  • Java泛型里的Intersection Type
    IntersectionType直译是叫交集类型,语法:&示例写法publicclassMyClass{publicvoidhello(){System.out.println("hello");}}interfaceMyInteface{//...defaultvoidworld(){Syst......
  • Java毕业设计作品(98):基于thymeleaf前后端分离 体育赛事购票系统设计与实现
      博主介绍:黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者,CSDN博客专家,在线教育专家,CSDN钻石讲师;专注大学生毕业设计教育和辅导。所有项目都配有从入门到精通的基础知识视频课程,学习后应对毕业设计答辩。项目配有对应开发文档、开题报告、任务书......
  • JAVA接口
    JAVA接口目录JAVA接口1接口定义2接口与类相似点:3接口与类的区别:4接口特性5抽象类和接口的区别6接口中默认方法7接口中静态方法8接口的多继承接口的声明1接口定义接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类......
  • JAVA学习之异常
    一、异常的概念    在Java编程中,异常是指在程序执行过程中可能发生的错误或问题,这些问题可能会导致程序无法继续正常运行,异常可以分为两种类型:编译时异常和运行时异常。1.编译时异常是在编译阶段被检测到的异常,程序员在代码中必须显示地处理这些异常,否则无法通过编......
  • Java中static的用法
    目录1.静态变量(StaticVariables)2.静态方法(StaticMethods)3.静态代码块(StaticBlocks)4.静态内部类(StaticNestedClasses)5.执行顺序6.注意事项在Java中,static关键字有几个重要的用途,主要用于定义类的静态成员,如静态变量、静态方法和静态代码块。以下是对这些用......
  • Java中关键字static的学习
    static关键字目录static关键字静态变量(静态成员变量)静态方法静态初始化块静态内部类静态导入在Java中,static关键字是一个非常重要的修饰符,它主要用于创建静态变量、静态方法、静态初始化块、静态内部类以及静态导入。使用static关键字的主要目的是为了实现共享,即被static修饰的......
  • 高级java每日一道面试题-2024年8月21日-框架篇[Spring篇]-使用IOC容器应该注意哪些?
    如果有遗漏,评论区告诉我进行补充面试官:使用IOC容器应该注意哪些?我回答:1.理解IOC的基本概念控制反转:在传统的编程模式中,程序会主动控制依赖关系的创建和管理。而在IoC容器中,这种控制权被反转给了容器本身。程序员只需要声明依赖关系,而由容器负责实例化和注入这些依......
  • java如何判断一个列表中是否存在大于1000的数字
    个人名片......
  • Java异常捕获与处理:深入理解与实践
    个人名片......
  • Java笔试面试题AI答之集合(1)
    文章目录1.Java集合类框架的基本接口有哪些?2.为什么Java集合类没有实现Cloneable和Serializable接口?关于Cloneable接口关于Serializable接口为什么不默认实现这些接口?3.Java中的HashMap的工作原理是什么?1.数据结构2.哈希函数3.处理哈希冲突4.动态扩容5.Java8......