热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

c++从double变为longint数据丢失_面试官:Java中有几种基本数据类型是什么?各自占用多少字节?...

认识基本数据类型在学习基本数据类型之前,我们先认识一下这两个单词:1、bit--位:位是计算机中存储数据的最小单位,指二进制

17bf6445e36629f33f37cde75198dd2f.png

认识基本数据类型a6f71d6f72cc1ef875530052ddc20b88.png

在学习基本数据类型之前,我们先认识一下这两个单词:

1、bit --位:位是计算机中存储数据的最小单位,指二进制数中的一个位数,其值为“0”或“1”。2、byte --字节:字节是计算机存储容量的基本单位,一个字节由8位二进制数组成。在计算机内部,一个字节可以表示一个数据,也可以表示一个英文字母,两个字节可以表示一个汉字。

1Byte=8bit (1B=8bit)

1KB=1024Byte(字节)=8*1024bit

1MB=1024KB

1GB=1024MB

1TB=1024GB

基本数据类型:

int 32bitshort 16bitlong 64bitbyte 8bitchar 16bitfloat 32bitdouble 64bitboolean 1bit(boolean 的备注+翻译)This data type represents one bit of information, but its "size" isn't something that's precisely defined.(ref)

这种数据类型代表一个比特的信息,但它的“大小”没有明确的定义

public class App {
    public static void main(String[] args) {
        System.out.println("Byte: " + Byte.SIZE);
        System.out.println("Short: " + Short.SIZE);
        System.out.println("Character: " + Character.SIZE);
        System.out.println("Integer: " + Integer.SIZE);
        System.out.println("Float: " + Float.SIZE);
        System.out.println("Long: " + Long.SIZE);
        System.out.println("Double: " + Double.SIZE);
        System.out.println("Boolean: " + Boolean.toString(false));
    }
}

输出

Byte: 8
Short: 16
Character: 16
Integer: 32
Float: 32
Long: 64
Double: 64
Boolean: false

Java 支持的数据类型包括

基本数据类型和引用类型

基本数据类型如下:

  • 整数值型:

    byteshortintlong

  • 字符型:char

  • 浮点类型:floatdouble

  • 布尔型:boolean

  • 整数型:默认 int 型,小数默认是 double 型。Float 和 Long 类型的必须加后缀。比如:float f = 100f

基本数据类型注意事项:
  1. 未带有字符后缀标识的整数默认为int类型;未带有字符后缀标识的浮点数默认为double类型。

  2. 如果一个整数的值超出了int类型能够表示的范围,则必须增加后缀“L”(不区分大小写,建议用大写,因为小写的L与阿拉伯数字1很容易混淆),表示为long型。

  3. 带有“F”(不区分大小写)后缀的整数和浮点数都是float类型的;带有“D”(不区分大小写)后缀的整数和浮点数都是double类型的。

  4. 编译器会在编译期对byte、short、int、long、float、double、char型变量的值进行检查,如果超出了它们的取值范围就会报错。

  5. int型值可以赋给所有数值类型的变量;

  6. long型值可以赋给long、float、double类型的变量;

  7. float型值可以赋给float、double类型的变量;

  8. double型值只能赋给double类型变量

引用类型声明的变量是指该变量在内存中实际存储的是一个引用地址,实体在堆中。

  • 引用类型包括类、接口、数组等。

  • 特别注意,String 是引用类型不是基本类型。

什么是值传递和引用传递?

  • 值传递,是对基本型变量而言的,传递的是该变量的一个副本,改变副本不影响原变量。

  • 引用传递,一般是对于对象型变量而言的,传递的是该对象地址的一个副本,并不是原对象本身。

一般认为,Java 内的传递都是值传递,Java 中实例对象的传递是引用传递。

是否可以在 static 环境中访问非 static 变量?

static 变量在 Java 中是属于类的,它在所有的实例中的值是一样的。当类被 Java 虚拟机载入的时候,会对 static 变量进行初始化。

如果你的代码尝试不用实例来访问非 static 的变量,编译器会报错,因为这些变量还没有被创建出来,还没有跟任何实例关联上。

char 型变量中能不能存贮一个中文汉字?为什么?

  • 在 C 语言中,char 类型占 1 个字节,而汉字占 2 个字节,所以不能存储。

  • 在 Java 语言中,char 类型占 2 个字节,而且 Java 默认采用 Unicode 编码,一个 Unicode 码是 16 位,所以一个 Unicode 码占两个字节,Java 中无论汉字还是英文字母,都是用 Unicode 编码来表示的。所以,在 Java 中,char 类型变量可以存储一个中文汉字。

下面是 福利

cb290ea179e0a091a9500e59a838f4b2.png

推荐阅读

【原创】Spring Boot终极篇《上》

【原创】Spring Boot终极篇《下》

笔试题:了解穷举算法吗?如何用代码实现



推荐阅读
  • 字符串匹配: BF与KMP算法
    文章目录一.BF算法1.算法思想2.代码实现二.KMP算法1.算法思想概述2.理解基于最长相等前后缀进行匹配3.代码中如何实现next数组5.代码实现6.next数组的优化一.BF ... [详细]
  • Java的核心库提供了大量的现成的类供我们使用。本节我们介绍几个常用的工具类。Math顾名思义,Math类就是用来进行数学计算的,它提供了大量的静态 ... [详细]
  • importjava.io.BufferedReader;importjava.io.File;importjava.io.FileReader;importjava.io. ... [详细]
  • DFS基本概念步骤优缺点典型例题递推基本概念直接或者间接调用自身的算法称为递归算法一般数据n ... [详细]
  • 找出字符串中重复字符
    2019独角兽企业重金招聘Python工程师标准packagejavaBasic;importjava.util.HashMap;importjava.util.Map; ... [详细]
  • JNI技术实践小结转自http:sett ... [详细]
  • 最近自己做一个工具最后涉及到一个存储成bmp位图的形式,由于这部分并不是整个project的重点我就从网上找了例子改了改,但是目前的问题是有很多时候都是存储的bmp全黑,我也并不知道是怎么回事。 ... [详细]
  • Java中的FileStoregetUsableSpace()方法,带示例 ... [详细]
  • 题意给出一个长度为n的序列,有一些位置可以放任意的数,问最长上升序列的长度。n ... [详细]
  • IDEA实用插件Lombok
    LombokLombok是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。通常,我们所定义的对象和b ... [详细]
  • iic协议
    IIC简介IIC,Inter-IntegratedCircuit,集成电路总线,需要2根线连接拓扑,是半双工,适用于”字节型”设备。I2C总线物理拓扑结构IIC通信原理: 通过对S ... [详细]
  • Java发布webservice应用并发送SOAP请求调用
    webservice框架有很多,比如axis、axis2、cxf、xFire等等,做服务端和做客户端都可行,个人感觉使用这些框架的好处是减少了对于接口信息的解析,最主要的是减少了对于传递于网络中XML ... [详细]
  • 下面是一个用openssl实现获取https网页内容的demo,整个流程比较简单,主要封装的API如下staticinthttps_init(http ... [详细]
  • C#的Type对象的简单应用
    通过Type对象可以获取类中所有的公有成员直接贴代码:classMyClass{privatestringname;privateintid;publicstringcity;pu ... [详细]
  • java接口中静态方法的继承
    java接口中静态方法的继承:1、由于类可以实现多个接口,如果接口中静态方法的方法在前面相同,就会发生继承冲突。2、从继承层面上干扰冲突的发生。另一方面,由于接口中的字段可以继承, ... [详细]
author-avatar
全球不懂我_934
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有