第七节:字符串、重载、递归
一、字符串
字符串分为可变字符串和不可变字符串两种类型。
1.不可变字符串 string类型
是一种特殊的引用类型,字符串的本质是一个char类型的一组数组,也可以称字符串对象
2.可变字符串
不需要返回值接收,直接操作的是原字符串所在的内存空间
需要引入命名空间:System.Text
二、方法的重载
本质:多个方法的方法名字一样
作用:可以使方法的调用更加方便
条件:1.方法名字必须一样
2.方法中参数列表必须不同(参数类型或者个数不同)
注意:在方法重载中,与返回值类型无关。
在调用重载方法中,系统会根据实际参数的类型或者数量来推导出最终调用了哪个方法
三、递归
条件:1.递归必须有结束条件
2.递归是将复杂的问题分解成源问题类似的小问题来解决,并且这些小问题和原问题是一件事,而且更加简单
//创建重载方法,求出两个数的乘积,参数类型分别为:整数,单精度浮点数,双精度浮点数
public int Mul (int a, int b)
{
return a * b;
}
public float Mul (float a, float b)
{
return a * b;
}
public double Mul (double a, double b)
{
return a * b;
}
//斐波那契数列
public int Fibonacci (int n)
{
if (n == 1 || n == 0) {
return 1;
} else {
return Fibonacci (n - 2) + Fibonacci (n - 1);
}
}
//阶乘
public int Factorial (int n)
{
if (n == 1) {
return 1;
} else {
return Factorial (n - 1) * n;
}
}
//练习:通过递归实现1+2+3+...+100(n)
public int As (int s)
{
if (s <= 1) {
return 1;
} else {
return As (s - 1) + s;
}
}