Q1:是这样的。偶看到字符数据类型这里。书上写的是字符数据类型可以用3种方法 表达。 第一个是直接给unicode值。如'\u0041' 第三个是写八进制方法变达。 如'\101' 小菜鸟要问的是,区分它们是不是用unicode表达全要在\后面加个U呢? 另外只能用8进制书写么?他是自动转换成10进制吧。那用2进制和16进制不行么?
Q2:关于转换。比如这个: int i=50; char c='A'; 如果i+c那是不是结果自动转换成int类型? 我看书上说,如果两个类型不同的数据相加,比如byte和short 那么结果是int类型。书上说两个数据相加,结果的数据类型是比这两个数据类型大一级的数据类型? 可是偶觉得。。。(只是偶觉得)比如两个数据比如int和long那相加结果应该是long吧。
Q3:是这样。我看书上说。数据转换。不能进行的只有布尔数据类型。 但是好像字符串也不能进行转换吧?但好像字符串不算一种数据类型。。
Q4:来了道幼稚的问题,版主请撑住再看。。。 呵呵,我看书知道整形有int 4字节和long 8字节。对吧。那么假设我分别定义两个变量 int i=123; long l=123; 书上写的是,他们的数值虽然相同,但是存储大小不同。因为一是4字节一是8字节。 看到这点偶也能理解。可是我分别去定义一个文件一个变量。差看大小发现。long是110字节。 int反而倒是127字节?
Q5:又一道幼稚问题。。。(呜呼偶也不想问这么幼稚的。。。) 是这样,在java中的负数,比如int i=-5。 是不是表示 这是一个int型的数5,然后在把5做单目 (-)运算。变成才变成-5?
06:对了,显示了arithmetic Exception .书上说只有我们使用除法运算符或者余数运算符时,除数 为0才会显示,可是我试了很多次,当除数为0时并不显示这个呀?
Q7:呵呵呵呵呵呵。 如果要输出int型最大值。 这么写:int imax=java.lang.Integer.MAX_VALUE;是啥意思?不过jdk目录下src.zip文件里面的确又 java-lang.java这个文件。 那是不是不写前面直接写成int imax=Integer.MAX_VALUE;也行?
Q8:这次帖子我没控制好。。太多了。。惭愧。。 又是一道很弱智的问题。 int i,j; i=5;j=5; System.out.println(i==j); 这道题输出是true。我要问的是:真假是布尔型的值,可我这里并没有定义布尔型啊?只定义了两个int 那是不是很==(等于)有关,只要有这个符号,得出来的结果就只能是真或是假了?
Q9:这是个数学题。。。 456f/123 那个。。456后面的f表示什么?
是这样,虽然大家可能觉得偶提的问题比较菜(其实是很菜。。) 但是偶真的是认真的看书了。。。 呵呵。又要麻烦大家。谢谢
顺便闲聊一下下: 另注:魔神英雄传好爽耶。呵呵,版主身在上海,可惜。买盘不太值。不过可以找找网上有没下载的。 不过也说不定过些日子上海台也有播出呢。 上海东方卫士在演天龙八部耶,我只知道中午11:20有。是黄日华演乔峰的那个。不错的。 黄日华以前还演过射雕的郭靖,和翁美玲演的。杨康是苗桥韦演的,他们演的都不错的,我觉得很值得买 盘一看。好像去年电视剧总销量它排第二名呦。偶比较喜欢看里面的洪七公。。。汗
J湖散人版主身在上海让我羡慕不己。因为,第2届游戏展在上海举办。羡慕啊羡慕。 我在北京去了第一届,在北京展览馆,真的很棒。拿回一大堆游戏周边真的好痛快。但当我们3人 心满意足大步踏出展览馆门口时,见到一人骑自行车从偶门身边擦肩而过。只见。。。此人左右车把各挂7,8 个大袋子。。比我们3人拿的加起来的5倍还多。。。同去的XX:不由的说了一句:“专业啊”。。上次门票20。 展览3天,第一天好像只对记者开放。后面两天随便进。不过展厅大部分都是网络游戏。宣传单机游戏少 的可怜。。。展览中有一些活动。做好了,可得到丰富的奖品。不过大多数只要填写个调查卡就能得到 小精品。去时要记得带笔,虽然里面也有送的,但太难找了。 虽然我不敢说,游戏展览会多精彩。但有一点我可以肯定的。呵呵。那就是。我敢说当天(好像是 10中旬)绝对是上海集中MM最多的地方。。。决不会错。
----------------解决方案--------------------------------------------------------
我的这些都答安不确定,希望高手参加讨论,这些都是我的想法,有对有错:P
Q1:UniCode 指的是16-bits coding,其中UCS-2 和UTF-8都是unicode,而他们都是ASCII的extension,楼主所说表达方法,是什么意思?在JAVA里,我们用的不是16进制eg char c = 0x0061;(UCS2) 如果print出来,System.out.println(c);就是a.那么并不是用8进制书写.
Q2:int i = 50;转化成Binary 50 = 0011 0010 而int是 32 bits(8 byte)singed number
同理char c = 'A'; 转化成bianry 是0100 0001 如果把这两个数相加,得到115正是这两个binary number相加的decimal结果,如果要测试这个结果是什么类型,我分别用Byte short char 来存这个结果i.e Byte b = i+c; Short s = i+c; Char q = i+c;最后compile都发现loss of presicion,而int k = i+c;却没有error这说明,得到的结果是int.
Q3:no idea
Q4:no idea
Q5: 有三种表示正负的方法,他们分别是(1) sign and magnitude,(2)ones complement,(3) twos complement. 举个例子-5, 先把5转化成binary, 5 = 0101 ,用第一种方法,-5 = 1101即把the most significant bit 换一下(0表示正数,1表示负数)第二种方法把所有的bit都换 i.e -5 = 1010,第三种方法就是第二种的改进,在第二种的基础上加1,then -5 = 1010+1=1011,现在的电脑一般用的是第三种方法(twos complement),而在表示 IEEE 754 Floating point number 却多用第一种(sign and magnitude)
Q6 Complie的时候不会有error但是当你运行的时候就会出现arithmetic Exception 了try it :P
Q7 no idea
Q8 不是很明白什么意思,但是true 和false是boolean value, 就是说只有两个true or false,而biany 却有一个值,我们用bit operator比较给出一个值,例如&(AND) | (OR) ^ (EOR)它们是bit operator,和&& ||是不同的 比如说11111111&0000000(mask) 给出的是一个值0000000 rather than一个boolean value.我是这样理解的..
Q9 或许是16进制的运算?
还有,你的问题一点也不菜,好难:((
----------------解决方案--------------------------------------------------------
Q3:数据转换吗?String类里帮你准备了许多现成的方法可以转换成各种数据类型,你看看API文档吧
Q4:什么东西写到文件里就都不一样了,呵呵,和文件系统有关系了,大小自然就不准确了,要看的话要查看内存里的存放大小,而不是写入文件后的
Q7:是的,java.lang的包是默认倒入的,所以……你明白了吧?
Q8:==可以用来测试基本类型是否相等和引用类型的引用是否相等,返回的类型就是boolean,所以……还有什么问题吗?
Q9:Java中数字字面值默认为double类型,加上f强调一下这个字面值以float类型处理
上海漂亮MM真的很多,活动也很多,只是我都不怎么看,嘿嘿……我一心在家看书学习
[此贴子已经被作者于2004-08-03 13:05:22编辑过]
----------------解决方案--------------------------------------------------------
学习中……
----------------解决方案--------------------------------------------------------
Admire
----------------解决方案--------------------------------------------------------