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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 章超 于 2013-4-16 21:11 编辑

做下面这题时不知道怎么做,在网上找到答案,就有了下面的两个疑惑,求帮助!

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

8 个回复

倒序浏览
string类型的变量,可以被看做是一个char类型的数组

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
这样却不行,楼主你确定运行没问题?
                String str="abc";
                System.out.println(str[1]);
改成
        String str="abc";
        System.out.println(str.charAt(1));就可以了
回复 使用道具 举报
郭华章 发表于 2013-4-16 13:04
这样却不行,楼主你确定运行没问题?
                String str="abc";
                System.out.println(str[1]);

就像我输入1354,结果就是4531,感觉就是题目需要的结果,就是不太明白,为什么程序可以那样写
回复 使用道具 举报
章超 发表于 2013-4-16 13:17
就像我输入1354,结果就是4531,感觉就是题目需要的结果,就是不太明白,为什么程序可以那样写 ...

你上面的图片的源码是你运行时的源码?String写成string你可以编译通过?
回复 使用道具 举报
  1. 你的代码应该有错误。可以考虑下这种方法 int number, result;
  2.             Console.WriteLine("请输入要倒序输出的数字");
  3.             number = Convert.ToInt32 (Console.ReadLine());
  4.             //循环计算 直到输入的数字为0时结束
  5.             while (number != 0)
  6.             {
  7.                 //先取出最后的一位数字
  8.                 //之后输入这一位数字
  9.                 //最后把当前的整数转换为丢失最后一位数字的整数
  10.                 result = number % 10;
  11.                 Console.Write(result);
  12.                 number =number /10;
  13.             }
  14.             Console.ReadKey();
复制代码
回复 使用道具 举报
代码没问题,2楼说得对,string可以看做是char类型的只读数组(之所以只读,因为字符串的不可变性),意思是string可看成数组,它的每个元素都是字符(即char)类型,既然是数组,当然可以通过数组名.Length来获得数组的长度,也可以调用数组成员。比如:题中的 string count 相当于 char[] count,(只是相当,并不一样,因为你不可以改变字符串) 举个例子:string count="Hello",那它就相当于char[] count={'H','e','l','l','o'},那count.Length=5,count[0]='H'  。

另外,不能改变字符串的意思是当一个字符串一旦声明,其值不能改变,比如不能对上面string类型进行如此操作: count[0]='W'; 因为它是只读的,只能读取,不能修改,但是可以这样 :
  1.    string count = "Hello";
  2.             string str="World";
  3.             count = str;
  4.             Console.WriteLine(count);
复制代码
输出值为World,这样看似修改了值,但实际上"Hello"这个字符串仍然在内存空间中,只是count指向了str所指向的保存"World"的内存空间。
打了这么多,不知道有没有说错的地方= =当做复习吧,我也刚学C#,共同进步!

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
章超 中级黑马 2013-4-16 21:06:35
8#
张林杰 发表于 2013-4-16 19:55
代码没问题,2楼说得对,string可以看做是char类型的只读数组(之所以只读,因为字符串的不可变性),意思是s ...

谢谢额,我彻底明白了,我是学数学的,所以现在还很基础
回复 使用道具 举报
章超 发表于 2013-4-16 21:06
谢谢额,我彻底明白了,我是学数学的,所以现在还很基础

{:3_57:}不客气,共同进步~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马