Life isn’t tied with a bow ,but it’s still a gift.
尽管没有精美包装,生活仍然是份厚礼。
连用几个if 语句与if else if else if else的区别是,后者只要有一个中了就不再执行,提高了效率。
一个开发心得:凡判断输入要先判断输入是否合法再去看它符合哪个条件,提高效率。合法性判断放在最前面。
switch语句:判断条件可以是char int byte short,default 语句后的break可以省略。按顺序向下运行,但default位置是可以随便放的,它总是最后执行,放在前面的default 后面的break不能省略。
用if 还是switch:数据少,类型符合(char int short byte)用switch,其它一般用if
现在最新版本的jdk已经可以判断string类型了。
想让某段语句多次执行用while(){},千万注意要改循环条件,否刚死循环太惨了。
这里还有个注意点,
独立存在的
x++和++x是一样的。不分彼此。
另外,while()后没有 ;
当变量只为了控制循环次数时,用for 内定义变量的方式要比用先定义再用while节约内存。
如下:
for (int i=0;i<3;i++){}//i出了这个for 就没了。
int i=0;
while(i<3){} //i控制完循环还有。
下面这行代码会编译失败,原因是,判断语句要么为真要么为假,而这里的条件语句也看不出个真假。
for 循环注意点:1初始化执行语句是可以随便定义的,只要能执行就成。2多个语句变量之间可以用,隔开。如下图。
下面图片中两种写法等效。
两种最简单的死循环表达形式:
for(;;){} //for循环不写循环内容默认为true
while(true){} //死循环。
写循环时候一定明确哪些语句是要循环的,哪些不是。不要错放入循环里。
循环嵌套:
class Fordemo
{
public static void main(String[] args)
{
int z=5;
for (int i=0;i<5;i++) //外层循环控制行数,范围从0~4
{
for (int j=0;j<z;j++) //内层循环控制列数,范围从0~z-1
{
System.out.print("*"); //这里注意没有ln是不换行的
}
System.out.println(); //这条语句的作用就是换行
z--;
}
int b=1;
for (int i=0;i<5;i++)
{
for (int j=0;j<b;j++)
{
System.out.print("*");
}
System.out.println();
b++;
}
一个小练习:
打印九九乘法表
class Practice
{
public static void main(String[] args)
{
for (int i=1;i<=9;i++)
{
for (int j=1;j<=i;j++)
{
System.out.print(j+"*"+i+"="+i*j+" ");
}
System.out.println();
}
}
}
技巧:
1、尖朝上改for 循环中间的循环控制条件,尖朝下,改for 循环前边的循环初始值。
2、上图有个美中不足之处是,4*4之下没有对齐,改进方法只需要把输出打印行的空格改成制表符,语句如下:
System.out.pirnt( i+”*”+j+”=”+i*j+”\t”); 结果如下(是不是美观多了^^):
break语句只能应用于switch和循环结构中。注意break 在嵌套的循环结构中跳出的是内循环。想跳出外循环可以用给循环标号的形式以break跳出。
continue语句只能应用于循环结构 中。continue下面的语句被跳过,结束本次循环开始下一次循环。下面图片,打印偶数。continue 也可以用给循环起名的形式跳外循环。
警告:break 和continue语句单独存在时后面不可以有任何语句,会报错。
不能在循环以外莫明其妙出个break或者continue.会报错(下图)