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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张振 中级黑马   /  2013-4-1 18:55  /  1440 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张振 于 2013-4-1 20:19 编辑

Random arr = new Random();
            int i = arr.Next(0, 8);
            string a = "8923456789";

            Console.WriteLine(a);
            Console.ReadKey();
我想问一下 字符串a 为什么加了【】后 为变成 数组 ,是什么显示转换吗?还是隐式自动转换
还有转换成那种类型的数组了?

7 个回复

正序浏览
邵震 发表于 2013-4-1 19:19
创建数组的格式一半都是  int(数组格式) arr(数组名)= new(创建) int(数组里元素的类型)[中间写的 ...

嗯 懂了
回复 使用道具 举报
没有转换,这样做只是实现以下功能:
字符串后面加[],表示取字符串里面的某个字符,返回char型。

字符串可以看成是只读的字符数组。
回复 使用道具 举报
字符串可以看成是字符的数组,只是能看成是,实质上不是
回复 使用道具 举报
楼主的理解有误哈。字符串本身可以看成是一个由字符组成的数组,但不是数组,可以用索引的方式得到该位置的字符。也可以通过<string>.toCharArry();得到一个字符数组。
数组是存储同一类数据,且有固定长度的一个集合。字符串不是数组。两者不是一种东西。

点评

懂了 谢谢  发表于 2013-4-1 20:15
回复 使用道具 举报
本帖最后由 管章鹏 于 2013-4-1 19:23 编辑

这里a是一个字符串,a是取字符串中第i个字符,因为字符串本身就是一个char数组,具体如下D:\1.jpg
运行结果如图所示:

希望对你能够有帮助
D:\2.jpg

1.jpg (29.02 KB, 下载次数: 5)

程序代码

程序代码

2.jpg (6.05 KB, 下载次数: 8)

运行结果

运行结果

点评

谢谢啦  发表于 2013-4-1 20:16
回复 使用道具 举报
创建数组的格式一半都是  int(数组格式) arr(数组名)= new(创建) int(数组里元素的类型)[中间写的是元素个数未知则不写] {写详细的元素用逗号隔开,未知则不写}


不是创建数组的情况下  你输入代码  arr[]   系统默认帮你找一个叫arr的数组
回复 使用道具 举报
java中[]代表的就是数组  []中的符号就是角标位  或者替代角标位的变量

所以输入代码要严格要求符号的样式和大小写还有先后顺序
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马