1、Java  支持的8种基本数据类型:

java的四种整数数据类型:byte 1    short 2     int4     long8
    byte     8位带符号整数 -128到127之间的任意整数     即-2的7次方     到    2的7次方减1
    short   16位无符号整数-32768~32767之间的任意整数  即-2的15次方   到   2的15次方减1
    Int       32位带符号整数 -2^31到2^31-1之间的任意整数
   Long     64位带符号整数 -2^63到2^63-1之间的任意整数
浮点型:float4     double8
   Float 32位单精度浮点数 根据IEEE754-1985标准
   Double 64位双精度浮点数  根据IEEE754-1985标准
布尔型:boolean1/8
字符型:char2 一个字符能存储一个中文汉字
备注:
  1)自动装箱是 Java 编译器在基本数据类型和对应的对象包装类型之间做的一个转化。比如:把 int 转化成 Integer,double 转化成 double,等等。反之就是自动拆箱。
  2)在栈中可以直接分配内存的数据是基本数据类型,而引用数据类型是数据的引用在栈中,但是它的对象在堆中。
  3)java中默认的整数类型是int类型,如果要定义为float类型,则要在数值后加上l或者L,默认的浮点型是双精度浮点,如果要定义为float型,则要在数值后加上f或者F

2、数据类型转

转化分为默认转化和强制转化
    1)默认转换:容量小的类型会默认转化为容量大的类型。
        byte->short->int->long->float->double
    float,double是带小数的,带小数的任何一个数据不管是4个字节还是8个字节,统一比所有的整数类型都大,所以排序为此
        char->//short 和char 在同一个等级上面
        byte short char 之间计算不会相互转化,首先转换成int
备注:小数型默认的是double类型,如果是float要在小数的后面加f  例如:1.23f;
   在java中基本数据类型可以相互转化;boolean类型比较特殊不可以转化成其他类型;
    2)强制转换:
        将容量大的类型转成容量小的类型,需要强制转化。 在多种类型混合运算过程中,首先选择将所有数据转化成容量最大的那种,再运算。
        注意只要不超出范围可以将整数类型直接赋值给byte, short,char

3、3种引用数据类型

String类型(8种基本数据类型里面并没有提到String类型,说明String类型属于引用类型)
 数组
 类
 接口

4、java中八种基本数据类型对应的包装类型:

基本数据类型     包装类型

byte            java.lang.Byte
short            java.lang.Short
int              java.lang.Integer
long             java.lang.Long;
float            java.lang.Float
double         java.lang.Double
boolean       java.lang.Boolean
char            java.lang.Charcter; //性格,特性,字符

5、常见的字符编码:

ASCII:采用一个字符编码,主要针对英文编码。列如:'a': 97   'A':65    '0':48

ISO-8859-1:又称Latin-1是国际化标志组织,ISO指定的,主要是为了西欧语言中的字符编码,和ASCII字符编码兼容

GB2312<GBK<GB18030:主要是汉子编码,三种编码从容量上看是包含关系

Unicode:Unicode 统一了世界上所有的文字编码,Unicode 有几种实现UTF-8,UTF-16,UTF-32

备注:java采用的是Unicode 码,char是字符类型,java中的char可以储存1个汉字;

6、转义字符

//斜线即\,在java语言中有转义的功能,可以将普通的t字符,转换成“制表符”
 1) char c1='\t';  //输出:一个制表符
  System.out.print(c1);
  System.out.println("abd");

2)

/*  char c2='''; 
  System.out.println(c2);//无将'即单引号输出,因为'即单引号在java语言中有特殊的含义,所以无法将其当做普通的字符输出
*/

char c3='\''; //输出:'
  System.out.println(c3);//可以将'即单引号输出,因为\作为转义字符,可以将java中有特殊含义的字符,作为普通的字符输出。

3)

/*  char c4='\';
  System.out.println(c4);//无法将\即斜线输出,因为\即斜线在java语言中有特殊的含义,所以无法将其当做普通的字符输出。
*/
  char c5='\\';//输出:\
  System.out.println(c5);//可以将\即斜线输出,因为\作为转义字符,可以将java中有有特殊含义的字符,做为普通的字符输出。

5)char c6='中';
  char c7='\u4e2d';//可以得出结论,'中'字对应的Unicode码是 4e2d
  System.out.println(c7);//输出:\中

一、java基础-数据类型_数据类型转化_字符编码_转义字符的更多相关文章

  1. python基础知识5---数据类型、字符编码、文件处理

    阅读目录 一 引子 二 数字 三 字符串 四 列表 五 元组 六 字典 七 集合 八 数据类型总结 九 运算符 十 字符编码 十一 文件处理 十二 作业   一 引子 1 什么是数据? x=10,10 ...

  2. Java应用开发中的字符集与字符编码

    事出有因 在向HttpURLConnection的输出流写入内容时,因没有设置charset,导致接收方对数据的验签不一致. URL url = new URL(requestUrl); //打开连接 ...

  3. MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码) - 转载

    MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码) MySQL的默认编码是Latin1,不支持中文,那么如何修改MySQL的默认编码呢,下面以设置UTF-8为例来说明. 需 ...

  4. MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码)

    MySQL基础配置之mysql的默认字符编码的设置(my.ini设置字符编码) MySQL的默认编码是Latin1,不支持中文,那么如何修改MySQL的默认编码呢,下面以设置UTF-8为例来说明. 需 ...

  5. JAVA基础——标识符和数据类型

    注释 单行注释 // 多行注释 /* */ 文档注释 /***/ 标识符和关键字 所有的标识符都应该以字母(A-Z或者a-z),美元符号($),或者下划线(_)开始 首字符之后可以时字母(A-Z或者a ...

  6. Java基础之基本数据类型

    前言:Java内功心法之基本数据类型,看完这篇你向Java大神的路上又迈出了一步(有什么问题或者需要资料可以联系我的扣扣:734999078) 变量就是申请内存来存储值.也就是说,当创建变量的时候,需 ...

  7. java基础(三) -基本数据类型

    变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间. 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据. 因此,通过定义不同类型的变量,可以在内存 ...

  8. 黑马程序员——JAVA基础之基本数据类型包装类和1.5JDK新特性装箱

    ------- android培训.java培训.期待与您交流! ---------- 基本数据类型包装类: byte Byte short Short int Integer char Charac ...

  9. Java基础 变量和数据类型及相关操作

    Java基本语法: 1):Java语言严格区分大小写,好比main和Main是完全不同的概念. 2):一个Java源文件里可以定义多个Java类,但其中最多只能有一个类被定义成public类.若源文件 ...

随机推荐

  1. 【兆易创新RISC-V开发板评测】01.干货分享

    背景介绍:2019年12月19日在面板包偶然发可以免费申请测评GD32VF103开发板,欣喜万分:在这之前各大技术论坛说是已经有国产兆易创新的RISCV指令集的MCU发布的事情,一时间摩拳擦掌想购入一 ...

  2. Fluent_Python_Part4面向对象,08-ob-ref,对象引用、可变性和垃圾回收

    第四部分第8章,对象引用.可变性和垃圾回收 1. 创建对象之后才会把变量分配给对象 变量是对象的标注,是对象的别名,是对象的引用,并不是对象存储的地方. 例子1. 证明赋值语句的右边先执行 class ...

  3. PyQt5日历控件及相关操作

    1.日历控件QCalendarWidget控件import sys,mathfrom PyQt5.QtWidgets import *from PyQt5.QtGui import *from PyQ ...

  4. java里判断字符串是否为数字类型的方法

    String type = "数字类型";if(StringUtils.isNotBlank(value)){ //区分正负数 if(value.startsWith(" ...

  5. LeetCode 234. Palindrome Linked List(判断是否为回文链表)

    题意:判断是否为回文链表,要求时间复杂度O(n),空间复杂度O(1). 分析: (1)利用快慢指针找到链表的中心 (2)进行步骤(1)的过程中,对前半部分链表进行反转 (3)如果链表长是偶数,首先比较 ...

  6. gym102220H 差分+树状数组(区间修改和输出)

    这题目很有意思,让我学会了树状数组的差分,更加深刻理解了树状数组 树状数组的差分写法 void add(int x,int k) { for (int i = x;i <= n;i += low ...

  7. %E3%80%90%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B%E3%80%91

    "%3Cdiv%20class%3D%22htmledit_views%22%20id%3D%22content_views%22%3E%0A%20%20%20%20%20%20%20%20 ...

  8. Centos610无桌面安装Docker-安装

    1.必备环境 设定docker源yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.rep ...

  9. redis requires Ruby version >= 2.2.2 系统默认 ruby 版本过低,导致 Redis 接口安装失败

    安装 Redis 接口时异常 ,系统 ruby 版本过低 ! 输入命令 " gem install redis " 出现 " ERROR:  Error installi ...

  10. FreeSWITCH 加载模块过程解读

    今天来学习FreeSWITCH 加载模块过程. 哪些模块需要编译,是由源码下的 modules.conf 文件决定的. 哪些模块在程序启动时自动加载,是由 freeswitch/conf/autolo ...