Java流程控制语句
用户交互Scanner
Scanner对象的作用:用于获取用户端在键盘上输入的值。
基本语法:
Scanner scanner=new Scanner(System.in);//创建一个扫描器对象s,用于获取用户输入的值
通过Scanner类的next()和nexLine()的方法来获取输入的值,一般在读取值之前,会用hasNext()和hasNextLine()来判断是否有输入值。
next()与nextLine()区别:
-
next():
-
一定要获取到有效字符才会结束
-
对于有效字符前的空格,next()会自动去处
-
当出现有效字符后,若输入的有空格,则会以该空格为结束标志,结束获取字符
-
因此next()不能获取带空格的字符
-
-
nextLine()
-
以按下Enter为结束标志,获取输入的所有值
-
可以获取空白
-
hasNext(),hasNextLine(),hasNextInt(),hasNextDouble()等,都是用来判断是否有值输入的方法。前两个用于判断字符串类型,后面的用于判断数值类型。
练习:

注意:在使用IO流(即输入输出流)时,必须有结束代码,以节省运行内存
可以看到,图中程序并没有显示进程结束,因此还需要在结束输出后补上以下代码:
scanner.close();
顺序结构
按代码由上往下,一步一步执行,是最为基本的一种结构。
选择结构
if语句
-
if
-
if...else
-
if...else if
-
if的嵌套
switch多选择结构
-
基本语法:
switch(expressino){
case value1://case后面的value1表示判断expression是否与其匹配
a=1;//此处表示若value1与expression相等,则运行改语句
break;//跳出switch语句
case value2:
a=2;
defult:
a=3;
}
-
switch语句中变量的类型及特性:
-
byte,short,int,char(字符型)
-
字符串型(注意:JDK7后,switch语句开始允许String类型了)
-
case标签必须为字符串常量或字面量(即特定的值)
-
case具有穿透性,当switch语句匹配到对应的值时,case后的所有语句都会执行,故,一般都会在每个case结束后加上break语句以跳出
-
switch相交于if语句,在匹配值时,更为方便
-
-
switch语句的练习


switch语句可以判断字符串类型
循环结构
while循环:
-
基本语法:
while(判断条件){
代码;
}; -
大多数情况下,while语句执行的次数都是有限的
-
少数情况下,需要循环一直执行,如服务器的请求响应监听等
-
只要判断条件为真,while语句就会一直执行,所以应避免出现死循环
练习:
//计算1+2+3...+100
int n=1;
int sum=0
while(n<=100){
sum+=n;
n++;
};
do...while
-
while与do...while的区别是:while先判断,条件为真则执行,而do...while是先执行,再判断
-
do...while语句至少执行一次
for循环
-
基本语法:
for(i=0;i<n;i++)//先获得i的值然后进行判断,当i满足条件时,执行for内部的代码,然后执行迭代,即i++
{
代码;
} -
for循环是支持迭代的一种通用结构,是最有效,最灵活的循环结构
-
for语句循环的次数在开始执行前就已经确定了
-
增强for循环(用于简化数组或几何的输入输出):
int[] array=new int[10];//创建一个含有10个元素的数组array
//遍历数组元素
for(int x:array){
System.out.println(x);
}
//上面的增强for循环与下面的语句等效
for(int x=0;x<array.length();x++){
System.out.println(array[x]);
}
练习:



break,continue
-
break与continue均用于控制循环的进程,二者区别在于:break用于跳出该循环程序,而continue仅退出本次循环
章末练习
打印一个三角形:

Debaug的使用:可以逐步观察程序进行工程中,控制台输出的值以及代码中变量的变化
总结
终于把这一章学完了,但我感觉我没刚学时那么有激情,那么悠然自得了。不过我一定会坚持的,好好利用这宝贵而短暂的大学生活,去为了以后而奋斗。我不是很愿去畅想未来会是怎样,对我来说,未来更多意味着迷茫与不知所措,虽然,我心中仍怀有希望与憧憬。我时常在某个平常而又无聊的时刻,突然恍惚,突然认不清自己,并怀疑起生活,怀疑起活着的意义。我总是这样,过得恍恍惚惚,迷迷茫茫,彷徨与流逝的时间中,深陷于浑浑噩噩的日子里。我终究是不知道自己想要什么,想成为什么样的人,经历什么样的生活。虽然,我也偶尔会幻想,幻想着物欲与金钱所能带给我的满足。我是平凡的,虽然我不愿承认,但我知道。每当我看到他人生活的苦涩时,我就开始畏惧,我承认我害怕过那样的日子。
好啦,不这么负能量了。来总结总结这两天学习的情况。在寝室上了两个星期的网课,这个星期开始线下教学了。由于这学期课程安排的比较多,所以自学进度减慢了,不过,如果好好利用时间,其实每天也能学到不少。今天和昨天学习状态都不怎么好,教室老师讲的总感觉不怎么好,总想着回来上网课,而真正在寝室时,又有些看不下去网课。以至于课程拖的比较多,其实也不算多,毕竟正式上课才开始两天,不过,这是个恶循环,如果不尽早解决,后面想补就难了。

浙公网安备 33010602011771号