【JAVA】数据类型,类型转换与提升,运算符,标识符命名规则

这篇具有很好参考价值的文章主要介绍了【JAVA】数据类型,类型转换与提升,运算符,标识符命名规则。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

🍉内容专栏:【JAVA从0到入门】

🍉本文脉络:数据类型,类型转换与提升,运算符,标识符命名规则

🍉本文作者:Melon_西西

🍉发布时间 :2023.7.12

目录

 1. 字面常量

2. 数据类型:四类八种

 3.类型转换

3.1 自动类型转换(隐式) 自动类型转换:

3.2 强制类型转换(显式) 强制类型转换:

4.类型提升

4.1 不同类型的数据之间相互运算时,数据类型小的会被提升到数据类型大的。

4.2. byte与byte的运算

5. 字符串类型

5.算术运算符

5.1. 基本四则运算符:加减乘除模(+ - * / %)

5.2. 增量运算符 += -= *= %=

5.3.自增/自减运算符 ++  --

5.4. 关系运算符

5.5. 逻辑运算符(重点)

5.5.1                                 布尔表达式1  &&  布尔表达式2(有一个假就是假)

5.5.2.                               布尔表达式1    ||   布尔表达式2  (有一个真就是真)​编辑

 5.5.3. 逻辑非 !               

6. 位运算符

 7. 条件运算符

 8. 运算符的优先级

9.标识符


 1. 字面常量

常量即程序运行期间,固定不变的量称为常量,分类:

1. 字符串常量:由""括起来的,比如“12345”、“hello”、“你好”。

2. 整形常量:程序中直接写的数字(注意没有小数点),比如:100、1000

3. 浮点数常量:程序中直接写的小数,比如:3.14、0.49 4. 字符常量:由 单引号 括起来的当个字符,比如:‘A’、‘1’

5. 布尔常量:只有两种true和false

6. 空常量:null

2. 数据类型:四类八种

在Java中数据类型主要分为两类:基本数据类型和引用数据类型

四类:整型、浮点型、字符型以及布尔型

八种:【JAVA】数据类型,类型转换与提升,运算符,标识符命名规则,java,开发语言

 分别输出long表示的数值的取值范围:

public class Test01 {
    public static void main (String []args){
        System.out.println(Long.MAX_VALUE);
        System.out.println(Long.MIN_VALUE);//L要大写
    }
}

 关于小数:

Java 中, int 除以 int 的值仍然是 int(会直接舍弃小数部分)

        float y=12.5;//会报错,不安全,因为大雨了4字节
        float y1=12.5f;//这样就不会报错了
        double num=1.1;
        System.out.println(num*num);//结果不是1.21,而是1.2100000000002     
        //除法运算小数点:
        int a1=1;
        int a2=2;
        System.out.println(a1/a2);//结果是0,不是0.5,不能够保存小数
        double b1=1;
        double b2=2;
        System.out.println(b1/b2);//结果是0.5,能够保存小数

字节是计算机中表示空间大小的基本单位.
计算机使用二进制表示数据. 我们认为 8 个二进制位(bit) 为一个字节(Byte).
我们平时的计算机为 8GB 内存, 意思是 8G 个字节.
其中 1KB = 1024 Byte, 1MB = 1024 KB, 1GB = 1024 MB.
所以 8GB 相当于 80 多亿个字节.

 3.类型转换

3.1 自动类型转换(隐式) 自动类型转换:

代码不需要经过任何处理,在代码编译时,编译器会自动进行处理。

特点:数据范围小的转为数 据范围大的时会自动进行。

3.2 强制类型转换(显式) 强制类型转换:

当进行操作时,代码需要经过一定的格式处理,不能自动完成。

特点:数据范围大的到数据范围小的。

        int a = 10;
        long b = 100L;
        //a = b; // 编译失败,不可以把8个字节的给四个字节的
        //强制转换(显式):可能丢失数据,用于把大的转为小的
        a=(int)b;
        //隐式类型转换,编译器自动把a 从int升级为double
        b = a; // 可以通过编译
        //类型提升
        int a1 = 10;
        long b1 = 20;
        //int c = a1 + b1; // 编译出错: a + b==》int + long--> long + long 赋值给int时会丢失数据
        long d = a1 + b1; // 编译成功:a + b==>int + long--->long + long 赋值给long

注意:

1. 不同数字类型的变量之间赋值, 表示范围更小的类型能隐式转换成范围较大的类型

2. 如果需要把范围大的类型赋值给范围小的, 需要强制类型转换, 但是可能精度丢失

3. 将一个字面值常量进行赋值的时候, Java 会自动针对数字范围进行检查

4. 强制类型转换不一定能成功,不相干的类型不能互相转换

4.类型提升

4.1 不同类型的数据之间相互运算时,数据类型小的会被提升到数据类型大的

. int与long之间:int会被提升为long

4.2. byte与byte的运算

对于 short, byte 这种比 4 个字节小的类型, 会先提升成 4 个字节的 int , 再运算

        byte a2 = 125;
        byte b2 = 123;
        //byte c2 = a2 + b2;//报错,因为小于4字节的内容,会提升为int参与运算
        byte c2=(byte)(a2+b2);
        System.out.println(c2);//强转换,这样可能丢失数据。会截断,结果是-8
        int d2=a2+b2;
        System.out.println(d2);//结果是228,不发生截断

5. 字符串类型

 在Java中使用String类定义字符串类型

        String str="HELLO";
        System.out.println(str);
        //string与int的转换
        int a5=100;
        //调用String这个类型的方法
        String s5=String.valueOf(a5);
        System.out.println(s5);
        //拼接
        String s6=a+"afternoon";//输出100afternoon
        System.out.println(s6);
        String s7=10+20+"xixi";
        String s8="xixi"+10+20;
        System.out.println(s7);//输出30xixi
        System.out.println(s8);//输出xixi1020
        //调用Integer这个类型的方法,来实现转换
        String str2="1009";
        int t2=Integer.valueOf(str2);
        System.out.println(t2+1);//输出1010

5.算术运算符

5.1. 基本四则运算符:加减乘除模(+ - * / %)

都是二元运算符,使用时必须要有左右两个操作数

int / int 结果还是int类型,而且会向下取整

做除法和取模时,右操作数不能为0

% 不仅可以对整型取模,也可以对double类型取模,但是没有意义,一般都是对整型取模的

详细看下面例子:

public class Text03 {
    public static void main(String[] args) {
        //除余的数不可以为0
        System.out. println(5/2);        //结果是2
        System.out.println((float)5/2);  //相当于把5转成5.0除以2=2.5
        System.out.println(5/(float)2);  //相当于2转成2.0,5除以2.0=2.5
        System.out.println((float) (5/2));//相当于5/2等于2,把2转成2.0

        System.out.println(10%3);   //1
        System.out.println(10%-3);  //1
        System.out.println(-10%3);  //-1
        System.out.println(-10%-3); //-1
        System.out.println(11.5%2); //1.5
    }
}

5.2. 增量运算符 += -= *= %=

该种类型运算符操作完成后,会将操纵的结果赋值给左操作数。

int a = 1;
a += 2;                // 相当于 a = a + 2
System.out.println(a); // 输出3
a -= 1;                // 相当于 a = a - 1
System.out.println(a); // 输出2
a *= 3;                // 相当于 a = a * 3
System.out.println(a); // 输出6
a /= 3;                // 相当于 a = a / 3
System.out.println(a); // 输出2
a %= 3;                // 相当于 a = a % 2
System.out.println(a); // 输出2

5.3.自增/自减运算符 ++  --

++是给变量的值+1,--是给变量的值-1。

如果单独使用,前置++和后置++没有任何区别;如果混合使用:

        int a1 = 10;
        int b1 = ++a1 ;  //a=a+1 ,b=a
        System.out.println(a1);  //11
        System.out.println(b1);  //11
        int a2 = 10;
        int b2 = a2++;   //b=a ,a=a+1
        System.out.println(a2);  //11
        System.out.println(b2);  //10

【前置++】先+1,然后使用变量+1之后的值,

【后置++】先使用变量原来的值,表达式 结束时给变量+1

只有变量才能使用自增/自减运算符,常量不能使用,因为常量不允许被修改

5.4. 关系运算符

关系运算符主要有六个: == != < > = ,其计算结果是 true 或者 false,没有0或1

        int a = 10;
        int b = 20;
        // 注意:在Java中 = 表示赋值,要与数学中的含义区分
        // 在Java中 == 表示相等
        System.out.println(a == b); // false
        System.out.println(a != b); // true
        System.out.println(a < b); // true
        System.out.println(a > b); // false
        System.out.println(a <= b); // true
        System.out.println(a >= b); // false
        //注意这种是错的:
       //System.out.println(3<a<5);//错误,算数异常

5.5. 逻辑运算符(重点)

逻辑运算符主要有三个: && || ! ,运算结果都是 boolean类型。

5.5.1                                 布尔表达式1  &&  布尔表达式2(有一个假就是假)

【JAVA】数据类型,类型转换与提升,运算符,标识符命名规则,java,开发语言

5.5.2.                               布尔表达式1    ||   布尔表达式2  (有一个真就是真)【JAVA】数据类型,类型转换与提升,运算符,标识符命名规则,java,开发语言
 5.5.3. 逻辑非 !               

语法规则:! 表达式                                  真变假,假变真。

int a = 1;
System.out.println(!(a == 1)); // a == 1 为true,取个非就是false
System.out.println(!(a != 1)); // a != 1 为false,取个非就是true

 短路求值 && 和 || 遵守短路求值的规则

对于 && , 如果左侧表达式值为 false, 则表达式结果一定是 false, 无需计算右侧表达式.

对于  || ,如果左侧表达式值为 true, 则表达式结果一定是 true, 无需计算右侧表达式

& 和 | 如果表达式结果为 boolean 时, 也表示逻辑运算. 但与 && || 相比, 它们不支持短路求值

6. 位运算符

位运算符主要有四个: & | ~ ^ ,~ 是一元运算符外,其余都是二元运算符。

位操作表示 按二进制位运算. 计算机中都是使用二进制来表示数据的(01构成的序列), 按位运算就是在按照二进制位 的每一位依次进行计算. 1。

按位与 &: 如果两个二进制位都是 1, 则结果为 1, 否则结果为 0

按位或: 如果两个二进制位都是 1, 则结果为 1, 否则结果为 0

按位与 &: 如果两个二进制位都是 1, 则结果为 1, 否则结果为 0

.按位异或 ^: 如果两个数字的二进制位相同, 则结果为 0, 相异则结果为 1.

 【JAVA】数据类型,类型转换与提升,运算符,标识符命名规则,java,开发语言

 7. 条件运算符

 表达式1 ? 表达式2 : 表达式3

当 表达式1 的值为 true 时, 整个表达式的值为 表达式2 的值

; 当 表达式1 的值为 false 时, 整个表达式的值为 表达式3 的值.

也是 Java 中唯一的一个 三目运算符, 是条件判断语句的简化写法.

/ 求两个整数的最大值
int a = 10;
int b = 20;
int max = a > b ? a : b;

 8. 运算符的优先级

运算符之间是有优先级的., 在可能存在歧义的代码中加上括号即可

9.标识符

标识符:在程序中由用户给类名、方法名或 者变量所取的名字。

标识符中可以包含:字母、数字以及 下划线和 $ 符号等等。

标识符不能以数字开头,也不能是关键字,且严格区分大小写

建议:

类名:   每个单词的首字母大写(大驼峰)

变量名、方法名:首字母小写,后面每个单词的首字母大写(小驼峰) 文章来源地址https://www.toymoban.com/news/detail-553126.html

到了这里,关于【JAVA】数据类型,类型转换与提升,运算符,标识符命名规则的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • JAVA——数据类型与运算符

    注意事项: 1.初始化操作是可选的, 但是建议创建变量的时候都显式初始化.                   2. 最后不要忘记分号, 否则会编译失败.                   3.初始化设定的值为 10L , 表示一个长整型的数字. 10l 也可以.                   4.float 类型在 Java 中占四个字节, 遵守

    2024年01月19日
    浏览(68)
  • Java数据类型,变量与运算符

    常量是在程序运行期间,固定不变的量称为常量。 在以上程序中,输出的Hello Word,其中的“Hello Word”就是字面常量。 字面常量的分类: 字符串常量 整形常量 浮点数常量 字符常量 布尔常量 空常量 注意:字符串,整形,浮点型,字符型以及布尔型,在Java中都称为数据类型

    2024年02月08日
    浏览(55)
  • 初识Java:数据类型与变量、运算符

    哈喽大家好,这篇文章我将为大家分享关于Java的数据类型与变量和运算符。 在Java中数据类型分为基本数据类型与引用数据类型,今天我们着重讲解基本数据类型。 基本数据类型又分为整型、浮点型、字符型以及布尔类型,我们来看下面的一张表。 整型类型 byte类型 byte类型

    2024年02月01日
    浏览(83)
  • 【Kotlin】类的继承 ② ( 使用 is 运算符进行类型检测 | 使用 as 运算符进行类型转换 | 智能类型转换 | Any 超类 )

    在 Kotlin 中 , 如果不确定一个 实例对象的类型 , 可以 使用 is 运算符进行判定 , 使用方法 上述用法可以判定 实例对象 是否是 判定类型 , 如果是 返回 true , 反之 返回 false ; 代码示例 : 在下面的代码中 , 调用 student is Person 判断 student 对象是否是 Person 类型 ; 执行结果 : 将 子类

    2024年02月03日
    浏览(47)
  • JavaSE-02【类型转换和运算符】

    自动转换:将取值范围小的类型自动提升为取回范围大的类型 案例:Demo01_DataType 强制类型转换:将取值范围大的类型,强制转换成取值范围小的类型 转换格式: 案例: 注意事项 1、算术运算符----四则与取模运算 2、算术运算符----加号的多种用法 3、案例 3、算术运算符---

    2024年02月08日
    浏览(52)
  • 8大基本类型的转换和运算符

       ​       byte----short----int----long----float----double    ​       char----      - 自动/隐式类型转换:小类型到大类型      - 强制类型转换:大类型到小类型        ​    语法:(要转换成为的数据类型)变量        ​    强转有可能溢出或丢失精度      - 两点规则:  

    2024年02月02日
    浏览(46)
  • 初识Java篇(JavaSE基础语法)(1)(数据类型+运算符)

     个人主页(找往期文章包括但不限于本期文章中不懂的知识点): 我要学编程(ಥ_ಥ)-CSDN博客 目录 前言:  初识Java  运行Java程序 注释 标识符 数据类型与变量  字面常量 数据类型 变量 类型转换  类型提升  字符串类型  运算符 算术运算符  关系运算符  逻辑运

    2024年03月24日
    浏览(51)
  • 把你的 Python 技能从 “Hello World“ 升级到 “万能钥匙“:掌握 Python 的输出、输入、数据类型转换和运算符!

    这篇文章我将为大家分享 python 的输出、输入、数据类型的转换和运算符 相关的知识。如果大家也想跟着博主一起学习 python ,欢迎订阅专栏哦python学习😊 我们都知道,要想知道程序的运行结果,就需要将结果给打印到屏幕上,那么 python 是怎样将程序输出到屏幕上的呢?这

    2024年02月11日
    浏览(39)
  • 图灵日记之java奇妙历险记--数据类型与变量&&运算符

    看下面这个栗子,宝子们 输出的\\\"cheer up!!!\\\"就是字面变量 字面常量的值在程序的整个生命周期中是不变的 字面常量的分类: 字符串常量 整形常量 浮点数常量 字符常量 布尔常量:只有两种true和false 空常量 注意:字符串,整形,浮点型,字符型以及布尔型,在java中都被叫作数据类型

    2024年02月04日
    浏览(45)
  • C++的类型转换运算符:dynamic_cast

    顾名思义,与静态类型转换相反,动态类型转换在运行阶段(即应用程序运行时)执行类型转换。 可检查 dynamic_cast 操作的结果,以判断类型转换是否成功。使用 dynamic_cast 运算符的典型语法如下: 例如: 如上述代码所示,给定一个指向基类对象的指针,程序员可使用 dyna

    2024年02月15日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包