. int [] arrInt = new int[] ;
等号左边开辟了一个小的栈的空间、等号右边在堆空间开辟了5个空间,会将堆里开辟的第一个空间给地址赋值给栈里的空间
string [,] productList = new string [,];
productList[,] ="1号";
productList[,] ="88元";
productList[,] ="2号";
productList[,] ="99元"; 遍历数组 如果是1维数组 for(int i=;i<productList.Length;i++){}
如果遍历2维数组 static void Main(string[] srts)
{
double myMoney="";
BuyStuff("苹果",out double myMoney);
} static double BuyStuff (string proName, out double money){
for(int i=;i<productList.getLength();i++){ if(productList[,i] == proName){
double proPrice = Convert.ToDouble(productList[,i]);
return (money-proPrice);
}
}
} 这个地方设计到返回值有2个 一个是商品一个是剩余的钱 ref :引用传参
out : 输出传参 在使用之前必须复制
out参数的特点:
在方法中使用之前,必须赋值。
在方法中返回之前,必须赋值。 double myMoney="";
BuyStuff("苹果",ref double myMoney); static string BuyStuff(string proName,double money)
{
money = money - "花的钱";
//等号右边先执行, 先通过money找到在栈中的引用值,再拿应用的值去减掉花的值
// 再将结果返回给 ref 的myMoney;
} ref 和 out 区别 相同点:凡是使用out/ref修饰的参数,传递的都是引用。
不同点:
out关键在侧重输出参数,也就是我调用你的方法,是为了通过输出参数的方式获得值(return值也是为了通过方法获得值):通常在方法需要返回多个值的时候使用。
通常在方法需要返回多个值的时候使用。
所有,out参数必须在方法返回之前(结束之前)赋值。 ref侧重于修改,也就是我调用你这个方法,并传入参数的目的是为了再方法中修改传入的这个变量。
所以,ref参数必须在传入之前就赋值。 . 方法(函数):重用 静态方法[static] 可以通过类名来调用 Console.ReadLine(); public static class Console{} Console 静态类; Console.WriteLine(这个种有19个方法)可以充分展现出方法重载 方法名相同方法的参数类型 和 个数不同; . return 为方法返回值、同事可以立即退出程序。break 退出当前循环、 continue 退出本次循环。 . void 无类型无返回值;接受返回值的方法: 接受变量的类型 必须和返回值的一致。 . 栈 和 堆 的特点 栈:栈的空间小,但是访问的速度快
堆:堆的空间大,但访问的速度慢
New 关键字 :
.在堆中开辟一块空间;
.创建对象
.调用构造函数 . params 可变参数
特点:
.可以直接传数组进去的、 也可以直接传 和 参数数组同类型的元素进去 .可变参数 在一个方法的参数列表中 方法的参数列表中可变参数只能有一个
这仅有的一个可变参数 必须在参数列表最后

.NET基础复习一的更多相关文章

  1. 《CSS权威指南》基础复习+查漏补缺

    前几天被朋友问到几个CSS问题,讲道理么,接触CSS是从大一开始的,也算有3年半了,总是觉得自己对css算是熟悉的了.然而还是被几个问题弄的"一脸懵逼"... 然后又是刚入职新公司 ...

  2. Java基础复习笔记系列 九 网络编程

    Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...

  3. Java基础复习笔记系列 八 多线程编程

    Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...

  4. Java基础复习笔记系列 七 IO操作

    Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...

  5. Java基础复习笔记系列 五 常用类

    Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...

  6. Java基础复习笔记系列 四 数组

    Java基础复习笔记系列之 数组 1.数组初步介绍? Java中的数组是引用类型,不可以直接分配在栈上.不同于C(在Java中,除了基础数据类型外,所有的类型都是引用类型.) Java中的数组在申明时 ...

  7. C语言基础复习总结

    C语言基础复习总结 大一学的C++,不过后来一直没用,大多还给老师了,最近看传智李明杰老师的ios课程的C语言入门部分,用了一周,每晚上看大概两小时左右,效果真是顶一学期的课,也许是因为有开发经验吧, ...

  8. JS基础 复习: Javascript的书写位置

    爱创课堂JS基础 复习: Javascript的书写位置复习 js书写位置:body标签的最底部.实际工作中使用书写在head标签内一对script标签里.alert()弹出框.console.log ...

  9. MySQL学习笔记_8_SQL语言基础复习

    SQL语言基础复习 一.概述 SQL语句注释方式 1)以"#"开头直到行尾的所有内容都是注释 2)以"--"(--后还有一个空格)开头直到行尾的所有内容都是注释 ...

  10. Java基础复习笔记基本排序算法

    Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统 ...

随机推荐

  1. 005——数组(五)array_diff_ukey()array_diff_uassoc()array_intersect()array_intersect_assoc()array_intersect_key()array_intersect_ukey()array_intersect_uassoc()

    <?php function dump($arr) { print_r($arr); } /**array_diff_ukey() 通过回调函数的方式,返回一个数组在其他数组中不存在键名的值 * ...

  2. Java 进阶7 并发优化 5 并发控制板方法

    Java 进阶7 并发优化 5 并发控制板方法 20131114 前言:          Java 中多线程并发程序中存在线程安全的问题,之前学习 Java的同步机制,掌握的同步方法只有一种就是使用 ...

  3. HDU 5875 Function (线段树+gcd / 单调栈)

    题意:给你一串数a再给你一些区间(lef,rig),求出a[lef]%a[lef+1]...%a[rig] 题解:我们可以发现数字a对数字b取模时:如果a<b,则等于原数,否则a会变小至少一半. ...

  4. zset类型以及其操作

    sorted set类型 sorted sets类型以及其操作zset是set的一格升级版本,它在set的基础上增加了一格顺序属性,这一属性在添加元素的同时可以指定,每次指定后,zset会自动重新按照 ...

  5. Linux系统在启动过程中内核文件丢失的解决方法

    在/boot目录下有两个重要的文件,分别是: vmlinuz-3.10.0-123.el7.x86_64         内核文件 initamfs-3.10.0-123.el7.x86_64.img ...

  6. .net 枚举(Enum)使用总结

    在实际问题中,有些变量的取值被限定在一个有限的范围内.例如,一个星期内只有七天,一年只有十二个月,性别只有男跟女等等.如果把这些量说明为整型.字符型或其它类型显然是不妥当的.为此,C#提供了一种称为“ ...

  7. AS3帮助手册

    http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/index.html

  8. 运算符和typeof

    算术运算符 例: var  a =10; var  b = "a"; var c = a-b; 那么c的值是NaN. 逻辑运算符:&&,|| 注意:如果是非布尔类型 ...

  9. .net MVC3 架构搭建描述

    用visual studio创建.net MVC3 web项目时,默认情况下是将Views,Controllers,Models创建在一个项目中. 需要把Controllers和Models做为两个独 ...

  10. 《机器学习》第三章——LDA

    import numpy as np x=np.zeros((2,17)) y=np.zeros((1,17)) def dataload(filename): f=open(filename) ar ...