1.控制台输入
使用标准输入串System.in
创建一个Scanner对象,传入一个输入流对象
在使用Scanner时,需要先使用import java.util.Scanner导入Scanner的类。再使用next()的方法获得用户输入的字符串,nextInt()为转换为整型,nextFloat()为转换为浮点型,nextBoolean()为转换为布尔型…
package com.javaBase.day3;
//在自己的类中使用别的类,需要使用import导入别的类
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args){
//创建一个Scanner对象,传入一个输入流对象
Scanner s=new Scanner(System.in);
System.out.println("请输入你的年龄:");
int age=s.nextInt();
System.out.println("请输入你的姓名:");
String name=s.next();
System.out.println("姓名:"+name);
System.out.println("年龄:"+age);
}
}
2.if语句
if语句基本形式有
-
if(条件){
//语句块
} -
if(条件){
//语句1
}else{
//语句2
} -
if(条件1){
//语句1
}else if(条件2){
//语句2
…
}else if(条件n){
//语句n
}else{
//语句
}
注意:如果不使用{} 只作用于紧挨着的一行。
import java.util.Scanner;
public class IfDemo {
public static void main(String[] args){
Scanner s = new Scanner(System.in);
System.out.println("请输入账号:");
int count = s.nextInt();
System.out.println("请输入密码:");
int password = s.nextInt();
int money=1000000;
if(count==555 & password==123){
System.out.println("请输入取款金额:");
int need = s.nextInt();
if (need % 100 == 0 & need>0) {
if(need<=money & need<=10000){
System.out.println("取款成功!");
}else if(need>=money){
System.out.println("余额不足!");
}else {
System.out.println("请输入一万以下的金额!");
}
}else {
System.out.println("请输入正确金额!");
}
}else {
System.out.println("账号或密码输入错误!");
}
}
}
3.switch语句
switch(表达式){
case 值:语句块;[break];
case 值:语句块;[break];
case 值:语句块;[break];
case 值:语句块;[break];
case 值:语句块;[break];
default:默认语句块;
}
表达式类型:byte short int char String 枚举
case后面的值必须是常量(具有给定的值),值不能重复
如果case语句块没有break,继续执行后面的case语句,直到遇到break
当所有的case都不匹配时,执行default语句块
import java.util.Scanner;
/**
* switch(表达式){
* case 值:语句块;[break];
* case 值:语句块;[break];
* case 值:语句块;[break];
* case 值:语句块;[break];
* case 值:语句块;[break];
* default:默认语句块;
* }
* 表达式类型:byte short int char String 枚举
* case后面的值必须是常量(具有给定的值),值不能重复
* 如果case语句块没有break,继续执行后面的case语句,直到遇到break
* 当所有的case都不匹配时,执行default语句块
*/
public class SwitchDemo {
public static void main(String[] args){
Scanner s = new Scanner(System.in);
System.out.println("请输入星期:");
int day = s.nextInt();
switch(day){
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期天");
break;
default:System.out.println("数据不合法");
}
System.out.println("请输入月份:");
int mounth = s.nextInt();
switch(mounth){
case 3:
case 4:
case 5:
System.out.println("春季");
break;
case 6:
case 7:
case 8:
System.out.println("夏季");
break;
case 9:
case 10:
case 11:
System.out.println("秋季");
break;
case 12:
case 1:
case 2:
System.out.println("冬季");
break;
default:
System.out.println("输入不合法");
}
}
}
4.循环语句
循环要素:
- 变量初始化
-
循环条件
-
循环语句
-
变量的迭代
(1)while循环 while(条件){ 循环语句 } 先条件判断再进入循环 while(true){ } 死循环
import java.util.Scanner;
public class WhileDemo {
public static void main(String[] args){
int i = 1;
while (i<=3) {
i++;
Scanner s = new Scanner(System.in);
System.out.println("请输入账号:");
int count = s.nextInt();
System.out.println("请输入密码:");
int password = s.nextInt();
int money=1000000;
if(count==555 & password==123){
System.out.println("请输入取款金额:");
int need = s.nextInt();
if (need % 100 == 0 & need>0) {
if(need<=money & need<=10000){
System.out.println("取款成功!");
}else if(need>=money){
System.out.println("余额不足!");
}else {
System.out.println("请输入一万以下的金额!");
}
}else {
System.out.println("请输入正确金额!");
}
}else {
System.out.println("账号或密码输入错误!");
}
}
//死循环 for(;;){}也是死循环,但推荐使用for(;;){},使用for更快
/* while(true){
System.out.println("a");
}*/
}
}
(2)do-while循环
do{
循环语句
}while(条件)
先进入循环再判断
public class DoWhileDemo {
public static void main(String[] args){
int i = 1;
do{
System.out.println(i);
i++;
}while(i<=10);
}
}
(3)for循环
for(声明变量;条件;变量的迭代){
循环语句
}
先初始化变量 一次
然后条件 一次或多次
条件成立 执行循环体 一次或多次
for(;;){} 死循环
public class ForDemo {
public static void main(String[] args){
/*int i;
for(i=1;i<=10;i++){
System.out.println(i);
}*/
/*int i=1;
for(;i<=10;i++){
System.out.println(i);
}*/
/*int i=1;
for(;i<=10;){
System.out.println(i);
i++;
}*/
int i=1;
for(System.out.println("a");i<=10;i++){
System.out.println(i);
}
}
}
两种死循环使用时推荐使用for( ; ; ){}
for循环语句一般用于循环次数明确的情况
跳出循环语句:
break:用于终止某个语句块的执行,用在循环语句体中,可以强行退出循环,默认情况下break只能终止当前所在循环,不能终止外部循环。
终止外部循环可以为循环定义一个标签,如outer: break outer;终止指定标签的循环。
continue:用在循环语句体中,用于终止某次循环过程,跳过循环体中 continue 语句下面未执行的循环,开始下一次循环过程。
public class BreakContinue {
public static void main(String[] args){
/*for(int i = 0;i < 10;i++){
System.out.println(i);
if(i==5){
break;//终止整个循环
}
}*/
for(int i = 0;i < 10;i++){
if(i==5){
continue;//终止整个循环
}
System.out.println(i);//跳过 当次循环 continue语句下的内容 跳过之后下次循环正常进行
}
}
}