6个回答
展开全部
1、Java是unicode的编码,所以一个char占2个字节,16个bit位
2、Java是跨平台的,所有的东西都是建立在Java虚拟机的基础上,所以对你来说,部分操作系统,都一样。
2、Java是跨平台的,所有的东西都是建立在Java虚拟机的基础上,所以对你来说,部分操作系统,都一样。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
===============================
关于第一个问题:
CHAR
char 数据类型(和 Character 对象封装的值)基于原始的 Unicode 规范,将字符定义为固定宽度的 16 位实体。Unicode 标准曾做过修改,以允许那些其表示形式需要超过 16 位的字符。合法代码点 的范围现在是从 U+0000 到 U+10FFFF,即通常所说的 Unicode 标量值。(请参阅 Unicode 标准中 U+n 表示法的定义。)
——摘自JAVA5.0API
===============================
关于第二个问题:
JVM
Java Virtual Machine(Java虚拟机),它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的,。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。
http://baike.baidu.com/view/160708.htm
——摘自百度百科
所以,相对与JVM这个平台,是的,统一的,因为是相同的平台。相对不同的平台char的长度是不一样的。
===============================
关于第三个问题
在C语言中没有区分,通用。
在JAVA中,int是直接的数据类型,ascii不是,所以你的问题不应该这么问。
看下面这个字符串转化为ascii的方法,希望你的问题能得到答案:
private String ascii(String s)
{
String s1 = "";
if(s == null)
return s;
try
{
s1 = String.valueOf(1 * s.charAt(0));
for(int i = 1; i < s.length(); i++)
s1 = s1 + "," + String.valueOf(1 * s.charAt(i));
}
catch(Exception exception) { }
return s1;
}
========================
以上!
关于第一个问题:
CHAR
char 数据类型(和 Character 对象封装的值)基于原始的 Unicode 规范,将字符定义为固定宽度的 16 位实体。Unicode 标准曾做过修改,以允许那些其表示形式需要超过 16 位的字符。合法代码点 的范围现在是从 U+0000 到 U+10FFFF,即通常所说的 Unicode 标量值。(请参阅 Unicode 标准中 U+n 表示法的定义。)
——摘自JAVA5.0API
===============================
关于第二个问题:
JVM
Java Virtual Machine(Java虚拟机),它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的,。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。
http://baike.baidu.com/view/160708.htm
——摘自百度百科
所以,相对与JVM这个平台,是的,统一的,因为是相同的平台。相对不同的平台char的长度是不一样的。
===============================
关于第三个问题
在C语言中没有区分,通用。
在JAVA中,int是直接的数据类型,ascii不是,所以你的问题不应该这么问。
看下面这个字符串转化为ascii的方法,希望你的问题能得到答案:
private String ascii(String s)
{
String s1 = "";
if(s == null)
return s;
try
{
s1 = String.valueOf(1 * s.charAt(0));
for(int i = 1; i < s.length(); i++)
s1 = s1 + "," + String.valueOf(1 * s.charAt(i));
}
catch(Exception exception) { }
return s1;
}
========================
以上!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
JAVA中char占2个字节。
第2个问题:JAVA因为有虚拟机,无论是在WINDOWS,还是在LINUX等系统中,只要有JAVA虚拟机,就是一样的。
第2个问题:JAVA因为有虚拟机,无论是在WINDOWS,还是在LINUX等系统中,只要有JAVA虚拟机,就是一样的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
java内部都是用unicode,所以才能用中文声明变量
如果需要进行网络通信,或是与本地代码通信,就应该特别注意编码的转换问题.
如果需要进行网络通信,或是与本地代码通信,就应该特别注意编码的转换问题.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
两个字节
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询