当前位置:网站首页 > Java基础 > 正文

java9基础教程



一.分支结构

1.if语句

  if语句会与其后的第一条语句或代码块结合,且只有当判断条件为true时才执行语句或代码块。例如,自行车只有在运动的时候才可以减速,就像下面这样:

 

java9基础教程

2.if-else语句

  if语句只是指出了当判断条件为true时需要执行的语句。使用if-else语句可以同时指定当判断条件为true和false时应该执行的语句。当自行车没有处于运动状态时,可以简单地输出一条信息:

 

  下面的程序根据分数来给出对应的等级:

 

  该程序最终的输出为:

 

  虽然testscore满足很多条件,例如76>=70和76>=60等,但是,一旦满足了一个条件,就会执行对应的语句(grade = 'C';)并跳过剩余条件。

3.switch语句

  与if和if-else语句不同,switch语句可以有许多可能的执行路径。例如下面的代码将会使用switch语句根据month的值来输出对应的月份:

 

  该程序将会输出:

 
 

  该程序将会输出:

 

  其实无论month的值是5,6还是7,都会输出Summer,因为case 5和case 6都没有break语句,即使匹配到了它们,程序也还是会进入case 7。

二.循环结构

1.while语句和do-while语句

  当判断条件为true时,while语句将会重复执行代码块中的内容,直到判断条件为false。它的语法如下:

 

  下面的程序使用while循环打印出1~10:

 

  可以使用以下while语句实现无限循环:

 

  Java也支持do-while循环,语法如下:

 

  do-while循环和while循环之间的区别在于它在执行完代码块中的语句之后进行判断,而不是在循环开始前进行判断。也就是说,循环体中的代码至少会执行一次。下面的程序使用do-while循环打印出1~10:

 

2.for循环

  for循环可以控制循环的次数,它的的语法如下:

 

  使用for循环时,需要注意:

  • initialization通常用来更初始化计数器,它只在循环开始前执行一次。
  • condition时每一次循环前要判断的条件,一旦条件不满足,循环将结束。
  • increment用来对计数器进行更新,它在每次循环结束后执行。

  下面的程序使用for循环打印出1~10:

 
 

  for循环还有一种用于迭代数组和集合的格式,称为增强型for循环。下面的程序使用增强型for循环来遍历数组:

 

三.中断控制流

1.break

  break语句用于结束当前控制结构,它有两种形式,带标签的break语句和不带标签的break语句。在之前的switch样例中已经见到了不带标签的break语句。还可以使用不带标签的break语句终止for,while或do-while循环,如下面的BreakDemo程序:

 

  该程序的输出是:

 

  不带标签的break语句跳出最内层的循环或分支结构,但带标签的break语句可以跳出标签对应的那个结构。例如:

 

  当找到12时,程序将跳出search对应的for循环。该程序的输出是:

 

2.continue

  continue跳到循环体的末尾,并执行循环条件的判断。下面的程序统计字母p的出现次数。如果当前字符不是p,则continue语句将跳过循环的其余部分并继续执行下一次循环。如果是 “p”,计数器会加1:

 

  该程序的输出是:

 

  和break一样,continue也分为带标签的continue语句和不带标签的continue语句。带标签的continue语句将会结束当前的循环并开始下一次标签对应的循环。下面的程序使用带标签的continue和break语句来判断一个字符串是否包含另一个字符串:

 

  该程序的输出是:

 

3.return

  最后一个可以中断控制流的语句是return语句,它可以从当前的方法中退出。return语句有两种形式,使用返回值和不使用返回值。如果要返回一个值,只需要将值或表达式放在return关键字后面。例如:

 

  返回值的数据类型必须与方法声明的返回值的类型匹配。使用没有返回值的return语句时,方法的返回值类型必须声明为void,例如:

版权声明


相关文章:

  • java面试基础复习2024-10-29 15:58:06
  • java实验语言编程基础知识2024-10-29 15:58:06
  • java基础的知识2024-10-29 15:58:06
  • java基础小码哥2024-10-29 15:58:06
  • java设计用户界面的基础知识2024-10-29 15:58:06
  • 黑马java基础面试题2024-10-29 15:58:06
  • 学java基础有前途吗2024-10-29 15:58:06
  • java 区块链 基础教程2024-10-29 15:58:06
  • 学习spring必学的java基础知识2024-10-29 15:58:06
  • java语言程序设计基础篇复习2024-10-29 15:58:06