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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 许大虾 于 2013-5-15 22:53 编辑

以下是我写一个小程序,将数组中取出最大值
  1. int[] numbers = { 3, 5, 6, 37, 19, 98, 65, 34, 54, 43 };
  2. int max = numbers[0];
  3. for (int i = 1; i < numbers.Length; i++)
  4. {
  5. if (numbers[i] > max)
  6. {
  7. max = numbers[i];
  8. }
  9. }
  10. Console.WriteLine("max=" +max);
  11. Console.ReadKey();
  12. }
复制代码
最后输出的语句是
Console.WriteLine("max=" +max);
我写成了 Console.WriteLine("max=" max);  少了个加号  
就显示了这个错误,问下为什么呢?加号的作用是什么意思!~

之前有看过,但一直记不起来~

评分

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

查看全部评分

5 个回复

倒序浏览
+是字符串连接符号啊。

评分

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

查看全部评分

回复 使用道具 举报
+是字符串连接符号啊。

评分

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

查看全部评分

回复 使用道具 举报
你说的这种情况下,+是做字符串的连接。你可以用反编译工具reflector看下(自己下一个免费的)。
在+连接字符串的时候,C#的Complier是把它转换成为了带两个参数的Concat()函数。这个函数可以反编译System.dll可以看到这个静态的带两个参数的方法

评分

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

查看全部评分

回复 使用道具 举报
当+号有一边是字符串时,就表示连接的意思。       暂时可以理解为Console.WriteLine()这个括号里的写法不符合C#的规定时就会报这个错误。等到后边学了方法你就明白根本原因了。
你这里可以用自己的 Console.WriteLine("max="+max);
或者用Console .WriteLine ("max={0}",max);都能输出你想要的东西。

评分

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

查看全部评分

回复 使用道具 举报
马炜亮 发表于 2013-5-15 21:44
当+号有一边是字符串时,就表示连接的意思。       暂时可以理解为Console.WriteLine()这个括号里的写法不 ...

~谢谢 ~~~~~~~~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马