zoukankan      html  css  js  c++  java
  • java基础知识总结(一)--数据类型

    java一共有八种基本数据类型:

     

    1.整型:

    类型

    长度

    byte

    1个字节

    short

    2

    int

    4

    long

    8

    java中整型的范围与运行java的机器无关,这也解决了平台的移植性问题;Java没有任何无符号类型;

    2.浮点类型

    类型

    长度

    float

    4

    double

    8

     

    三种异常的浮点数:

    1.正无穷大(1/0) Double.POSITIVE_INFINITY

    2.负无穷大 (-1/0)   Double.NEGATIVE_INFINITY

    3.不是数字0/0 负数开根号等:Double.NaN

     

    判断是不是一个合法数 Double.isNaN(v),而不能用==

     

    如果不允许有误差,则不能用浮点类型,因为计算机中用二进制来存储,无法准确表示十进制的数,例如1/10。

                  double x=2.0;

            double y=1.1;

            System.out.println(x-y);

    ---》0.8999999999999999

    3.char类型

    表示单个字符,通常用来表示字符常量;

    java中的 char 数据类型使用 Unicode 编码,占用两个字节内存。

     

    package test;

    public class Char {

          public static void main(String[] args) {

                char ch1 = 97;

                char ch2 'a';

                System.out.println("ch1=" ch1);

                System.out.println("ch2=" ch2);

          }

    }

    输出结果??

     

    -》a

    -》a

     

     

    代码点是指与代码表中一个字符对应的代码值;

    代码单元是指表示一个字符的连续空间;

    java对字符unicode的实现是UTF-16+增补字符的形式实现的;基础类型用一个代码单元表示;特殊字符,用两个连续的代码单元表示;

     

     4.boolean类型

    只有true跟false,不能跟int相互转换;

     

    String类型
    java中的string为不可变字符串;

    例如string x="hello";
    如何改变最后两位为p!;

    X=X.substring(0,3)+"p!";
    java中只能通过修改变量指向,来改变变量的值;这样修改跟直接修改所指的值效率哪个更高呢?修改会降低一部分效率,但是做到了字符串变量共享。共享所带来的高效率远高于拼接的消耗;

    字符串常用方法
    charat


    数组类型:

    初始化时,必须指定长度;数字类型数字初始化时,默认为0;布尔类型默认为false;
    数组一旦创建就不能再改变其大小;
    数组操作:
    Arrays.Copyof
    Arrays.Sort
    Arrays.binarySearch(arr, 1)二分法查找
    Arrays.fill(arr, 1)
    大数值:
    如果实际场景时比较大的数值,那么int long double等不能满足条件,只能使用java.math类中的大数值
    bigInteger bigDecimal
    通过valueof可用将普通基础类型转换为大数值类型:
    bigInteger bInt=BigInteger.valueof(100);
    注意大数值类型不支持+-等运算符,只能使用math类提供的方法;

  • 相关阅读:
    NotePad++与MinGw的第一次HelloWorld——C语言环境配置说明
    Debian7.5.0安装流程(VirtualBox虚拟机环境)
    NotePad++插件——Customize Toolbar
    NotePad++与MinGw的第一次HelloWorld
    Debian7.5.0安装流程(VirtualBox虚拟机环境)
    stm32f103cbt6 sd卡 移植fatfs 显示在e-ink屏幕上
    stm32f429i disc usb cdc vcp 虚拟串口 example project (CubeMX Hal)
    stm32 cubemx 工程生成报错
    clover 在win10下工作不正常
    proxifier 3.29 key
  • 原文地址:https://www.cnblogs.com/ykwang/p/14777396.html
Copyright © 2011-2022 走看看