A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

下午敲代码,报错了 ,一看错误行是注释里
31行报错的代码: char 默认初始化值 只能放入一个字节。但是\代表转义字符,U代表编码,java采用的是uicoe编码,\u相当于把后面的四个0给转义了
然后经同学和老师分析师 其中     \U     出了错误,去掉   \  或者改成    \\  ,就会不出错了。
于是我就来发个帖 ,问问 ,这情况的原因?、
求大牛帮帮忙,
下面是代码的全部
**************************************************分割线************************************************
/**
为什么要有数组容器
答:为了储存同种数据类型的多个值
数组的概念
数组是存储同一种数据类型多个元素的集合也可以看成一个容器
数组是存储同一种数据类型多个元素的集合,也可以看成一个容器
数组既可以存储基本数据类型,也可以存储引用数据类型
数组的定义
数据类型 [] 数组名 = new 数据类型 [ 数据的长度]
int [] arr = new int [1,2,i++,,,,,]
什么是数组的初始化,
就是为数据开辟连续的内存储存空间,并为每个数组元素赋值
如何对数组进行初始化
静态初始化时只指定长度,由系统给出初始化值
动态数组,初始化时,给出初始化值,有系统决定长度
动态初始化的格式
int[]arr=[1,2,3,5,4,]
静态初始化时 只是给出长度。有系统给出初始化时值
动态初始化,是给出数组元素的值,由系统决定长度
什么是数组的初始化
就是为数组开辟连续的储存空间,并为每一个数组元素赋值
什么是数组的初始化
就是为数组开辟连续的储存空间,并且为每一个数组元素赋值
数组的动态初始化格式
数组类型[] 数组名=new 数组类型[数组元素]
整数类型,byte short int long 默认初始化值都是0
浮点类型,float double 默认初始化值都是0.0
布尔类型,boolean的默认初始化值都是false
字符类型的默认初始化值都是'\u0000',因为,\u0000是十六进制。每一个0代表了四位二进制,这样就可以表示两个字节
        char 默认初始化值 只能放入一个字节。但是\代表转义字符,U代表编码,java采用的是uicoe编码,\u相当于把后面的四个0给转义了
   char 在内存中占两个字节,是16个二进制位
   \u0000 每一个0 其实代表的是16进制的0,那么四个零九代表了16个二进制位
*/

class Lanxi09 {
public static void main(String[] args){
  int [] arr = new int [5];
  System.out.println(arr[0]);
  arr[0]=10;
  System.out.println(arr[0]);
  System.out.println(arr);
}
}


6 个回复

倒序浏览
同学 你是 1024班的嘛
回复 使用道具 举报
Unicode字符以\u开头,空白字符在Unicode码表中的对应值为'\u0000',所以能这样表示
回复 使用道具 举报
czcjyqm 发表于 2015-10-30 17:36
同学 你是 1024班的嘛

你肯定认错人了,玛门一本正经的瞎说道
回复 使用道具 举报
Sayman 发表于 2015-10-30 17:40
Unicode字符以\u开头,空白字符在Unicode码表中的对应值为'\u0000',所以能这样表示 ...

其实我想打出\u  在注释里。可是编译的时候 报错了。
下面是我们导师给的解释好人解决办法

是把注释中的\u看成了转义字符,而转义字符前面要有斜线,如果要表示一条斜线,必须将斜线也转义了,所以要用两条斜线!
回复 使用道具 举报
manmen 发表于 2015-10-30 22:06
其实我想打出\u  在注释里。可是编译的时候 报错了。
下面是我们导师给的解释好人解决办法

恩  刚试了,是的,又学会了,谢谢!!!
回复 使用道具 举报
manmen 中级黑马 2015-10-31 22:11:44
7#
Sayman 发表于 2015-10-31 10:51
恩  刚试了,是的,又学会了,谢谢!!!

不客气,相互学习共同进步
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马