——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-
&_&在实际应用中,有时让我们倍感无力的是:对一些小知识点不能灵活运用。它们好比鞋里的一粒沙子,容易忽视,但不能不重视。我们有理由坐下来,做好整理,再整装上阵。
1、continue
for(int i=1;i<10;i++){
...
if(x==3){
continue;//如果x=3时,i=5,会跳出第五次的这次循环,继续执行第六次
//break;//终止循环
}
}
作用:跳过循环体中剩余的语句继续执行下一次循环(加速循环)。
continue只用在for、while、do-while 等循环体中,与if条件语句一起使用。
2、break
int userInput=1;
switch(userInput){
case 1:
doAdd();
break;//
case 2:
doDelete();
break;
default:
break;
}
for(int i=1;i<10;i++){
...
if(x==3){
break;//终止循环
}
}
作用:跳出switch块防止穿透(结束代码块),终止循环
3、return
从被调函数返回到主调函数继续执行,返回时可附带一个返回值,返回值可以是一个常量,变量,或是表达式。
int test(){
int f=3;
return f;//把f的值返回给主调函数
}
public static string msms(){
return "dsfajsd";//把字符串返回给主调函数
}
在void方法中,要结束函数体,可以直接用return,不能加任何量在后面。
void Del(int userInput){
if(userInput>6||userInput<1){
return;//符合条件,结束函数体
}
}
作用:结束正在运行的函数
4、gets()和get char()
最重要的区别是gets()读一行,getchar()读一个字符。
先看原型:
char * gets(char * ptr);
int getchar(void);
作用是:
gets()用于从标准输入流stdin读入一个整行(以’\n’或EOF)结束,写入ptr指向的字符数组,并返回这个指针;出错或遇到文件结束时则返回NULL。行末的’\n’从流中取出,但不写入数组。gets()不检查被写入的数组大小。
getchar()用于从标准输入流stdin读入一个字符,并返回这个字符。如果读到文件结尾,则返回EOF。注意到EOF不能用char类型表示,所以getchar()函数返回的是一个int型的数。使用时也应该注意这一点。
我曾封装过这样的一个方法:
+(NSString *) inputString
{
char s[200];
int length=0;
char ch;
while((ch=getchar())!='\n')
{
s[length]=ch; //把每次从标准输入流stdin读入一个字符赋值给一个数组元素
length++;
}
s[length]='\0'; //用\0替换\n,堵上数组的尾巴
return [[NSString alloc]initWithUTF8String:s];
}
——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-