.NET基础复习一
- . 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基础复习一的更多相关文章
- 《CSS权威指南》基础复习+查漏补缺
前几天被朋友问到几个CSS问题,讲道理么,接触CSS是从大一开始的,也算有3年半了,总是觉得自己对css算是熟悉的了.然而还是被几个问题弄的"一脸懵逼"... 然后又是刚入职新公司 ...
- Java基础复习笔记系列 九 网络编程
Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...
- Java基础复习笔记系列 八 多线程编程
Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...
- Java基础复习笔记系列 七 IO操作
Java基础复习笔记系列之 IO操作 我们说的出入,都是站在程序的角度来说的.FileInputStream是读入数据.?????? 1.流是什么东西? 这章的理解的关键是:形象思维.一个管道插入了一 ...
- Java基础复习笔记系列 五 常用类
Java基础复习笔记系列之 常用类 1.String类介绍. 首先看类所属的包:java.lang.String类. 再看它的构造方法: 2. String s1 = “hello”: String ...
- Java基础复习笔记系列 四 数组
Java基础复习笔记系列之 数组 1.数组初步介绍? Java中的数组是引用类型,不可以直接分配在栈上.不同于C(在Java中,除了基础数据类型外,所有的类型都是引用类型.) Java中的数组在申明时 ...
- C语言基础复习总结
C语言基础复习总结 大一学的C++,不过后来一直没用,大多还给老师了,最近看传智李明杰老师的ios课程的C语言入门部分,用了一周,每晚上看大概两小时左右,效果真是顶一学期的课,也许是因为有开发经验吧, ...
- JS基础 复习: Javascript的书写位置
爱创课堂JS基础 复习: Javascript的书写位置复习 js书写位置:body标签的最底部.实际工作中使用书写在head标签内一对script标签里.alert()弹出框.console.log ...
- MySQL学习笔记_8_SQL语言基础复习
SQL语言基础复习 一.概述 SQL语句注释方式 1)以"#"开头直到行尾的所有内容都是注释 2)以"--"(--后还有一个空格)开头直到行尾的所有内容都是注释 ...
- Java基础复习笔记基本排序算法
Java基础复习笔记基本排序算法 1. 排序 排序是一个历来都是很多算法家热衷的领域,到现在还有很多数学家兼计算机专家还在研究.而排序是计算机程序开发中常用的一种操作.为何需要排序呢.我们在所有的系统 ...
随机推荐
- tomcat安装图文教程
tomcat安装图文教程 运维 memory 发布于June 1, 2013 标签: Windows, Tomcat 下载Tomcat安装文件,官方下载地址是:http://tomcat.apache ...
- notepad配合正则表达式处理文本
<option value="irs01.com">irs01.com</option><option value="hdslb.com&q ...
- 【转】线程池体系介绍及从阿里Java开发手册学习线程池的正确创建方法
jdk1.7中java.util.concurrent.Executor线程池体系介绍 java.util.concurrent.Executor : 负责线程的使用与调度的根接口 |–Execut ...
- 【51nod-1315】合法整数集(数位)
[思路] 既然是or操作,将数转化为二进制,数位是1,对应的数组元素+1,再将x转为成二进制,只要查找X为1的位置,将之前存放的数组数字找个最小的输出就可以了. 但是并不是所有的数都要参与or,因为有 ...
- DNS智能解析的搭建与配置
分类: LINUX 原文地址:DNS智能解析的搭建与配置 作者:十年梦生 9月份整整忙了一个月,都抽不出时间来写篇文章,这几天趁着10.1终于有时间来写些东西了,将9月份所做的一些东西来做下总结. ...
- web版源码管理软件SCM-Manager安装配置
背景 一直使用 “VisualSvn Server” 作为源码管理工具,使用一段时间之后,使用场景遇到以下问题 添加用户必需登录到服务器. 一台服务器,只能安装一个 “VisualSvn Server ...
- Spring容器三种注入类型
Spring注入有三种方式: 1.Set注入(使用最多) 2.构造器注入(使用不多) 3.接口注入(几乎不用)不做测试了 1.Set注入:所谓Set注入就是容器内部调用了bean的Set***方法,注 ...
- PHP exec()函数的介绍和使用DEMO
exec()函数用来执行一个外部程序,我们再用这函数基本是在linux. 开启exec()函数: exec()函数是被禁用的,要使用这个函数必须先开启.首先是 要关掉 安全模式 safe_mode = ...
- redis的Hash类型以及其操作
hashes类型 hashes类型及操作Redis hash是一个string类型的field和value的映射表.它的添加.删除操作都是0(1)(平均).hash特别适合用于存储对象.相较于将对象的 ...
- 查询表名及列名长度超过一定长度的SQL
apple=# select * from (select a.relname, char_length(a.relname) as tb_name_length, b.attname, char_l ...