Java流程控制
Scanner对象
可以通过Scanner类获取用户输入
package yedongxin.cnblogs.www.base.scanner;
import java.util.Scanner;
public class Demo01 {
static void main() {
//创建一个扫描器对象,用于接收键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方式接收:");
//判断用户有没有输入字符串
if(scanner.hasNext()== true){
//使用next方式接收
String str = scanner.next();//程序会等待输入数据
System.out.println("输出的内容为:"+str);
}
//凡是属于IO流的类如果不关闭会一直占着资源,用完就关闭
scanner.close();
}
}
//输出 输出的内容为:hello
/*
1.一定要读取到有效字符后才可以结束输入
2.对输入有效字符之后遇到的空白,next()方法会自动去掉
3.只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
4.next()不能得到带有空格的字符串*/
package yedongxin.cnblogs.www.base.scanner;
import java.util.Scanner;
public class Demo02 {
static void main() {
Scanner scanner = new Scanner(System.in);
System.out.println("使用nextLine方式接收:");
if(scanner.hasNextLine()){
String s = scanner.nextLine();
System.out.println("输出的内容为:"+s);
}
scanner.close();
}
}
//输出 输出的内容为:hello world
/*
1.以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的字符
2.可以获得空白
*/
Scanner进阶用法
package yedongxin.cnblogs.www.base.scanner;
import java.util.Scanner;
public class Demo04 {
static void main() {
Scanner scanner = new Scanner(System.in);
int num1 = 0;
float num2 = 0.0f;
System.out.println("请输入整数:");
if(scanner.hasNextInt()){
num1 = scanner.nextInt();
System.out.println(num1);
}else{
System.out.println("你输入的不是整数");
}
scanner.close();
}
}
//输入1 1
//输入1.1 你输入的不是整数
package yedongxin.cnblogs.www.base.scanner;
import java.util.Scanner;
public class Demo04 {
static void main() {
int num1 = 0;
double num2 = 0.0;
Scanner scanner = new Scanner(System.in);
System.out.println("请输入小数:");
if(scanner.hasNextDouble()){
num2 = scanner.nextDouble();
System.out.println(num2);
}else{
System.out.println("你输入的不是小数");
}
scanner.close();
}
}
//输入1 1.0
顺序结构
java基本结构 顺序结构
选择结构
- if
- switch
String word = scanner.nextLine();
if(word.equals("Hello"))
//用于判断输入内容是否是“Hello”
package yedongxin.cnblogs.www.base.struct;
public class Demo02 {
static void main() {
char grade = 'C';
switch(grade){
case 'A':
System.out.println("优秀");
break;
case 'B' :
System.out.println("良好");
break;
case 'C':
System.out.println("及格");
break;
default:
System.out.println("输入错误");
break;
}
}
}
//case穿透现象:如果不加break就会把后面的结果都输出来
循环结构
- while循环
- do while循环
- for循环
package yedongxin.cnblogs.www.base.struct;
public class Demo03 {
static void main() {
int i = 0;
while(i <= 100){
System.out.println(i);
i++;
}
}
}
package yedongxin.cnblogs.www.base.struct;
public class Demo04 {
static void main() {
int i = 0;
int sum = 0;
do {
sum += i;
i++;
}while(i <= 100);
System.out.println(sum);
}
}
//while先判断后执行,dowhile先执行后判断,dowhile最少执行一次
package yedongxin.cnblogs.www.base.struct;
public class Demo05 {
static void main() {
int a = 0;
while(a < 0){
System.out.println(a);
a++;
}//无输出
System.out.println("____________________________________________________");
do{
System.out.println(a);
a++;
}while(a < 0);
}
}//输出0
package yedongxin.cnblogs.www.base.struct;
public class Demo06 {
static void main() {
int a = 1;//初始化条件
while(a<=100){//条件判断
System.out.println(a);//循环体
a+=2;//迭代
}
for(int i =1;i<=100;i++){
System.out.println(i);
}
}
}
//for循环语句是支持迭代的通用结构,最有效、最灵活的循环结构
增强for循环
//用于数组
package yedongxin.cnblogs.www.base.struct;
public class Demo07 {
static void main() {
int[] numbers = {10,20,30,40,50};//定义数组
//遍历数组元素
for(int x:numbers){
System.out.println(x);
}
}
}
/*
输出
10
20
30
40
50
*/
break、continue
/*
break在循环中强制退出循环,在switch中使用break
continue终止此次循环,继续执行循环
*/
浙公网安备 33010602011771号