ICode9

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

Java 的进制

2022-02-24 15:03:10  阅读:161  来源: 互联网

标签:类型转换 Java 进制 00000000 System 类型 println out


1.类型转换
自动类型转换(隐式类型转换)
整型、实型(常量)、字符型数据可以混合运算。运算中,不同类型的数据先转化为
同一类型,然后进行运算。
转换从低级到高级。
自动转换有以下规律:
小的类型自动转化为大的类型
整数类型可以自动转化为浮点类型,可能会产生舍入误差
字符可以自动提升为整数
2.强制类型转换(显式类型转换)
格式: (type)value type是要强制类型转换后的数据类型
注意:
强制类型转换可能导致溢出或损失精度
在把容量大的类型转换为容量小的类型时必须使用强制类型转换
浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
示例代码:
package com.gx.demo;
public class ConvertType {
public static void main(String[] args) {
// =====自动类型转换(隐式转换)
// 小的类型自动转化为大的类型
byte byteValue1=110;
int intValue1=byteValue1+50;
System.out.println(intValue1);
// 整数类型可以自动转化为浮点类型,可能会产生舍入误差
// Float和Double提供了快速的运算,然而问题在于转换为二进制的时候,有些数字不能完全转换,只能无限接近于原本的值
float floatValue1=2+10f;
float floatValue2=floatValue1‐11.9f;
System.out.println(floatValue2);
// 字符可以自动提升为整数
char charValue1 =‘a’;
int intValue2=charValue1+10;
System.out.println(intValue2);
//======强制类型转换
//‐‐强制类型转换可能导致溢出或损失精度
//导致溢出
byte d = (byte) 128;
// 00000000 00000000 00000000 10000000 128的原码
// 00000000 00000000 00000000 10000000 128的反码
// 00000000 00000000 00000000 10000000 128的补码
// 10000000 的补码
// 11111111 反码
// 10000000
System.out.println(d);
/**

  • 关于 原码,反码,补码的知识(了解)
  • 正数的反码,补码是其本身;
  • 负数的反码是符号位保持不变,其余位取反;负数的补码是在其反码的基础上+1
    */
    //损失精度
    System.out.println(Long.MAX_VALUE);
    float floatValue3=(float) Long.MAX_VALUE;
    System.out.println(floatValue3);
    //‐‐在把容量大的类型转换为容量小的类型时必须使用强制类型转换
    int intValueA=120;
    byte byteValueB=(byte) intValueA;
    System.out.println(byteValueB);
    //‐‐浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
    int intValue3=(int)23.7;
    int intValue4=(int)‐23.7;
    System.out.println(intValue3);
    System.out.println(intValue4);
    }
    }
    JDK 是java的开发环境
    JRE 是java的运行环境

Java创建一个公共的类: public 公共的 , class 类 ,ppq 这个类的类名(注意:公共的类的类名必须要和文件名相同)
public class ppq{

}

一个字节 = 8个格子

十六进制的前缀:0x
八进制的前缀:0
二进制的前缀:0b

进制就是取决于能用的数值范围。
例如:二进制的数值范围是0和1两个数
八进制的数值范围是0~7
十进制的数值范围是0~9
十六进制的数值范围是0~f
注意:数值范围就是可用数字的范围。例如:八进制就是可用的数字为“01234567”这八个数。像8,9这种数字就不能出现。
整数的默认类型是:int类型
小数的默认类型是:double类型。
所以,在设置整数和浮点数(有小数点的小数)时要加上修饰符。
例如:float p=1.2f; 当p=1.2 的float 类型是小数时,要在值的后面加上修饰符,就是f或者F。
如果没有加上,就默认为double类型的。

指数符号位 就是指数前面的符号,有正有负。例如:2^-4 “-”就是指数符号
指数:2^4 。4就是指数,指数有正有负
尾数位:小数转化为二进制后的范围。就是可以存放多少二进制的数

无论是单精度还是双精度在某些计算时都是近似值,在将其他进制数转化为二进制时(计算机只认得二进制,如何进制数在计算机运行时都是二进制)会出现精度丢失,所以造成出现近似值
近似值:就是约等于精确值。例如约等于2.000009这种。小数多但有值的
精确值:就是精确的值。字面上的意思。例如等于2就是2,不是约等于2.000009这种
浮点数大多数都是近似值

标签:类型转换,Java,进制,00000000,System,类型,println,out
来源: https://blog.csdn.net/weixin_47260385/article/details/123111907

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

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

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

ICode9版权所有