Java中的char和C++中的char是不同的

在C++中

在C++中,char是基础数据类型,8位,1个字节。byte不是基础数据类型,一般是typedef unsigned char byte;这样子的,也就是说,byte其实是unsigned char类型,那么也是8位,1个字节。不同的是,char可以表示的范围是-128-127,而byte可以表示的范围是0-255。

在Java中

在java中,char和byte都是基础数据类型,其中的byte和C++中的char类型是一样的,8位,1个字节,-128-127。但是,char类型,是16位,2个字节,‘\u0000‘-‘\uFFFF‘。

为什么java里的char是2个字节?java内部都是用unicode的,所以java中的char是2个字节,java其实是支持中文变量名的。

补充:

C++中,某些数据占多少位,多少字节,是与机器操作系统,硬件,有关系的。

而java中,是与操作系统,硬件无关的,因为java是运行在虚拟机上的,所以数据大小都是固定的。

顺便,java中的long是固定8字节,64位;int是4字节,32位。

时间: 2024-08-28 15:46:51

Java中的char和C++中的char是不同的的相关文章

java 常见的几种类型范围说明,char 型变量中能不能存贮一个中文汉字

package com.yuan.test; public class Autogrew { public static void main(String[] args) {  // 保存 short 可取的最大值的常量,最大值为 215-1.(32 767)   // 保存 short 可取的最小值的常量,最小值为 -215.(-32 768)      short s1=11278;      s1+=1;      //s1=s1+1;//报错 自动会转换成int 类型      Syst

Java中的BigInteger在ACM中的应用

Java中的BigInteger在ACM中的应用 在ACM中的做题时,经常会遇见一些大数的问题,这是当我们用C或是C++时就会觉得比较麻烦,就想有没有现有的现有的可以直接调用的BigInter,那样就方便很多啦.在java中就有的,所以在这儿我就做一个简要的介绍吧 -:在java中的基本头文件(java中叫包) import java.io.* importjava.util.*       我们所用的输入scanner在这个包中 importjava.math.*          我们下面要

Java中如何使用引用数据类型中的类呢?

--------------------------------------- Java中数据类型的分类: 基本数据类型:4类8种.byte.short.int(整数默认).long.float.double(小数默认).char.boolean 引用数据类型:类.接口.数组.字符串.Lambda等等. 注意:字符串.Lambda这两种引用数据类型后面会学习到. --------------------------------------- 在Java 9 或者更早版本中,除了8种基本数据类型,

java.sql.date与java.util.date区别以及数据库中插入带时分秒的时间

java.sql.Date,java.sql.Time和java.sql.Timestamp三个都是java.util.Date的子类(包装类). java.sql.Date是java.util.Date的子类,是一个包装了毫秒值的瘦包装器,允许 JDBC 将毫秒值标识为 SQL DATE 值.毫秒值表示自 1970 年 1 月 1 日 00:00:00 GMT 以来经过的毫秒数. 为了与 SQL DATE 的定义一致,由 java.sql.Date 实例包装的毫秒值必须通过将时间.分钟.秒和毫

Java线程状态及Thread类中的主要方法

要想实现多线程,就必须在主线程中创建新的线程对象. 任何线程一般具有5种状态,即创建,就绪,运行,阻塞,终止. 创建状态: 在程序中用构造方法创建了一个线程对象后,新的线程对象便处于新建状态,此时,他已经有了相应的内存空间和其他资源,但还处于不可运行状态. 就绪状态: 新建线程对象后,调用该线程的start()方法可以启动线程.当线程启动时,线程进入就绪状态.此时,线程将进入线程队列排队,等待CPU服务,这表明它已经具备了运行条件.-------(运行start()方法只是进入就绪状态,并没有开

ubuntu安装jdk后,程序“java”已包含在下列软件包中

在root下一切正常,在当前用户下就出现了问题.如下所示:  java -version 程序“java”已包含在下列软件包中: * gcj-4.4-jre-headless * openjdk-6-jre-headless * cacao * gij-4.3 * jamvm请尝试:sudo apt-get install <选定的软件包> 解决方法:(手动设置系统默认JDK) 在终端中依次输入命令: jdk1.6.0_26 sudo update-alternatives --install

Java基础知识强化之IO流笔记45:IO流练习之 把文本文件中数据存储到集合中的案例

1.  把文本文件中数据存储到集合中      需求:从文本文件中读取数据(每一行为一个字符串数据)到集合中,并遍历集合. 分析:      通过题目的意思我们可以知道如下的一些内容,      数据源是一个文本文件.      目的地是一个集合.      而且元素是字符串.      数据源:   b.txt -- FileReader -- BufferedReader  目的地:  ArrayList<String> 2. 代码示例: 1 package cn.itcast_02; 2

java编程思想第四版中net.mindview.util包下载,及源码简单导入使用

在java编程思想第四版中需要使用net.mindview.util包,大家可以直接到http://www.mindviewinc.com/TIJ4/CodeInstructions.html 去下载,并按照所在页面的操作进行操作.当然也可以直接我下载下面的链接,下载的直接是JAR包,可以直接导入并使用: net.mindview.util包:百度网盘:点击下载  密码: ggpi java编程思想第四版源码:百度网盘:点击下载  密码: ur3e 下面我简单的介绍一下源码在Eclipse中的导

Java利用POI导入导出Excel中的数据

     首先谈一下今天发生的一件开心的事,本着一颗android的心我被分配到了PB组,身在曹营心在汉啊!好吧,今天要记录和分享的是Java利用POI导入导出Excel中的数据.下面POI包的下载地址http://poi.apache.org/download.html,有兴趣的朋友也可以去看看其中的API.      下面分享一下在对POI进行基本操作时觉得需要注意的两点:       1.POI中针对xlsx/xls是需要create different Workbook instance

Java 容器在实际web项目中应用

前言:在java开发中我们离不开集合数组等,在java中有个专有名词:"容器" ,下面会结合Thinking in Java的知识和实际开发中业务场景讲述一下容器在Web项目中的用法.可结合图片代码了解Java中的容器 备注 :这个地方 ,参考于朝向远方的博客Java容器详解,既然前人总结的这么好,我就直接拿来用,在这里更注重在实际开发中的例子,感谢那些总结的前辈们,辛苦了. 简单的数组例子 Thinking in Java 中并没有把数组归为Java的容器,实际上数组的确不是Java