ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java学习-数据类型

2022-05-18 14:31:07  阅读:147  来源: 互联网

标签:运算符 java 字符 int 数据类型 学习 类型 byte


Java中的变量有严格的数据类型区分。任何一个值都有其数据类型

数据类型

基本数据类型:

  1. 整数:byte(-128-127)、short()、int()、long()

    image-20220504191544033

    注: int为整数的默认类型,如需赋值long类型赋值较大整数时,须在后面追加L

    如果声明byte或者short类型需要特殊标注吗?

  2. 小数:double、float

     

    double是浮点型的默认类型,如需为float类型,须在值后面追加'F'或者'f'。如float f = 12.4F

  3. 布尔:只有两个值: true/false

    java中boolean不能参与算术运算。

  4. 字符:

    • ASCII

    • unicode编码: 它为每种语言中的每个字符设定了同意并且唯一的二进制编码,包括ASCII编码。满足跨语言、跨平台进行文字转换和处理。

    • char声明的字符:单引号包裹的单个字符

       

    注: 字符都是表示单个字符

  5. 转译字符:通过一些特殊符号来表示例如单引号和一些特殊字符。

     

     

引用数据类型:

  1. 字符串: 必须用双引号包裹。就赋值一些像js中普通字符串

     

  2. 数组:

  3. 对象:

 

类型转换

  1. 自动类型转换:前提:两种类型相互兼容,目标类型大于源类型

    short s = 122;
    int i = s;
  2. 强制类型转换:前提:两种类型相互兼容,目标类型小于源类型

    short s = 122;
    byte b = (byte)s;

    上面说的类型相互兼容,是指什么情况

    强制类型转换的规则:

    // 整数足够长,数据完整
    int i= 122; byte b = (byte)i   // b == 122
       
    // 整数不够长,数据截取
    int i = 10001 byte b = (byte)i  // b == 17(符号位变化,可能变为负数)

    // 浮点转整数,数据截断
    double d = 2.5 int i = (int)d   // i = 2
       
    // 字符整数互换,数据完整
    char c = 'A' int i = (inte)c   // i = 65 这里也可以给c赋值65或者'\u0041'
       
    // boolean的取值为true/false,不可与其他类型转换

运算符

  1. 算数运算符:

    • 二元: + - * / %(取余)

    • 一元: ++ --

  2. 赋值运算符: = += -= *= /= %=

  3. 关系运算符: > < >= <= ==等于 !==

  4. 逻辑运算符:两个boolean类型的操作数或者表达式进行比较

    &&-与 ||-或 !-非

  5. 三元运算符: 布尔表达式 ? 结果1 : 结果2

  1. == 是全等于吗?

  1. 自动类型提升:

    • 操作数中有以下的任何一种类型,结算结果自动提升为该类型。且优先级从左到右逐渐降低。如果操作数中均为byte或者short类型,计算结果提升为int型。

      double  float long int
    • 任何类型与String类型相加,实为拼接,计算结果提升为String类型。

控制台录入

引入工具包、声明Scanner等。不知道怎么用

 

标签:运算符,java,字符,int,数据类型,学习,类型,byte
来源: https://www.cnblogs.com/lovlyGir/p/16284548.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有