1.Scanner对象
- 通过Scanner类来获取用户的输入。
- 基本语法:
Scanner s = new Scanner(System.in);
-
通过Scanner类的next() 与 nextLine() 方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。
-
next()
- 一定要读取到有效字符后才可以结束输入。
- 对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
- 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
- next() 不能得到带有空格符的字符串。
- nextLine()
- 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
- 可以获得空白。
2.顺序结构
- Java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行。它是任何一个算法都离不开的一种基本算法结构。
package com.jiang.struct;
public class ShunXunDemo {
public static void main(String[] args) {
System.out.println("hello1");
System.out.println("hello2");
System.out.println("hello3");
}
}
3.选择结构(if和switch)
- if单选择结构
if(布尔表达式){
//如果布尔表达式为ture将执行的语句
}
- if双选择结构
if(布尔表达式){
//如果布尔表达式的值为true
}else{
//如果布尔表达式的值为false
}
- if多选择结构
if(布尔表达式1){
//如果布尔表达式 1的值为true执行代码
}else if(布尔表达式2){
//如果布尔表达式 2的值为true执行代码
}else if(布尔表达式3){
//如果布尔表达式 3的值为true执行代码
}else{
//如果布尔表达式都不为ture执行代码
}
- 嵌套的if结构
if(布尔表达式1){
//如果布尔表达式 1的值为true执行代码
if(布尔表达式2){
//如果布尔表达式 2的值为true执行代码
}
}
- switch多选择结构
switch(){
case value:
//语句
break; //可选
case value:
//语句
break; //可选
//你可以有任意数量的case语句
default: //可选
//语句
}
从 Java SE 7 开始 switch支持字符串 String 类型,同时 case 标签必须为字符串常量或字面量。(字符本质还是数字)
4.循环结构
- while循环
while(布尔表达式){
//循环内容
}
- 先判断后执行
- 只要布尔表达式为true,循环就会一直执行下去
- 我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环。
- do…while循环
do{
//代码语句
}while(布尔表达式);
- do…while循环至少会执行一次
- 是先执行后判断
- for循环
for(初始化;布尔表达式;更新){
//代码语句
}
- for循环执行的次数是在执行前就确定的
- 是最有效,最灵活的循环结构。
- 增强for循环(主要用于数组和集合)
for(声明语句:表达式)
{
//代码语句
}
5.break和continue
- break在任何循环语句主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩下的语句。(break语句也在switch语句中使用)
- continue语句用在循环语句中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。