Java流程控制语句
简单/复合语句
I&O语句
结构化语句
一.简单or复合
简单语句:以分号结尾的java句子
复合语句:用{}括起来的语句
二.(I/O)(I/O流并没有展开,后续中会有)
1.标准输出System.out对象
print() 输出数据不换行
println() 输出数据后换行
Write 输出字节组数,输出不换行
PS·输出多个数据项之间要用“+”
PS·数值变量的值分别输出要加空格字符串
2.标准输入System.in对象
(1)使用标准输入串System.in单一字节输入获取
package ch123;
public class asf123 { public static void main(String args[]){ //System.in.read()一次只读入一个字节数据,而我们通常要取得一个字符串或一组数字 //System.in.read()返回一个整数 //必须初始化 //int read = 0; char read = '0'; System.out.println("输入数据:"); try { //read = System.in.read(); read = (char) System.in.read(); }catch(Exception e){ e.printStackTrace(); } System.out.println("输入数据:"+read); } }
|
(2)使用Scanner取得一个字符串or一组数字
package ch123;
import java.util.Scanner;
public class asf123 { public static void main(String args[]){ System.out.print("输入"); Scanner scan = new Scanner(System.in); String read = scan.nextLine(); System.out.println("输入数据:"+read);
/*在新增一个Scanner对象时需要一个System.in对象,因为实际上还是System.in在取得用户输入。Scanner的next()方法用以取得用户输入的字符串;nextInt()将取得的输入字符串转换为整数类型;同样,nextFloat()转换成浮点型;nextBoolean()转换成布尔型。*/ } } |
(3)使用BufferedRead取得含空格的输入
package ch123;
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;
public class asf123 { public static void main(String args[]){ //Scanner取得的输入以space, tab, enter 键为结束符, //要想取得包含space在内的输入,可以用java.io.BufferedReader类来实现 //使用BufferedReader的readLine( )方法 //必须要处理java.io.IOException异常 BufferedReader br = new BufferedReader(new InputStreamReader(System.in )); //java.io.InputStreamReader继承了Reader类 String read = null; System.out.print("输入数据:"); try { read = br.readLine(); } catch (IOException e) { e.printStackTrace(); } System.out.println("输入数据:"+read); } } |
3.异常处理机制(没有再展开看了)
①try-catch && read method
②throws IOException && read method
PS·if没有try-catch出现异常的话会导致程序崩溃,所以建议顶层使用try下面用throws
PS·
三.结构化语句
(一)顺序结构(已知)
(二)选择结构
If语句
If-else语句
If-else if语句
Switch语句(switch表达式返回值的类型必须是int、byte、char、short。Case子句中的值必须是常量,default是可选的,break使程序跳出switch)
(三)LOOP
While语句(先判断再执行)
Do-while语句(先执行一次再判断)
For语句(套嵌、多变量循环)
(四)跳转
·Break语句
1.Define:终止某个语句or循环体的执行,在多层套嵌中可以用标签指明终止的是那一层。
2.代码块的标号:在Java中,可以为每个代码块加一个标号,一个代码块通常是用大括号{}括起来的一段代码。加标号的格式如下:
BlockLabel: { codeBlock }
break语句的第二种使用情况就是跳出它所指定的块,并从紧跟该块的第一条语句处执行。例如:
break BlockLabel;
·Continue语句
1.Define:continue语句用在循环语句体中,用于终止某次循环过程,跳过循环体中 continue语句下面未执行的循环,开始下一次循环过程。
2.套嵌情况:continue语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环。
对于for语句在进行终止条件的判断前,还要先执行迭代语句。也可以用continue跳转到括号指明的外层循环中格式为continue outerLable;
例如 outer: for( int i=0; i<10; i++ )
{ //外层循环
inner: for( int j=0; j<10; j++ )
{ //内层循环
if( i<j ){
……
continue outer;
}
……
}
…
}
·Return语句
return语句从当前方法中退出,返回到调用该方法的语句处,并从紧跟该语句的下一条语句继续程序的执行。返回语句有两种格式:
return expression;
return;
return语句通常用在一个方法体的最后,否则会产生编译错误,除非用在if-else语句中。