if语句 分支结构:
语法格式:
if(表达式1){语句块1}
else{}语句块2},
如果表达式的值为true执行语句块1,否则执行语句块2。
if else语句,多分支结构
if(表达式1){语句块1}
else if(表达式2)(语句块2)
...
如果表达式1成立执行语句块1,再如者,表达式2成立则执行2
练习题 由用户输入一个数,判断是基数偶数
System.out.println("请输入你的数");
Scanner sc=new Scanner(System.in);//接收用户的值
int i=sc.nextInt();
if(i%2==0){ //判断用户的值取余是否为零
System.out.println(i+"这个数是偶数");//打印到屏幕
}else{
System.out.println(i+"这个数是基数");
}
}
swicth语句会根据表达式的值从相匹配的执行,一直执行到break标签出开始。
swicth语法格式:
swicth (条件表达式){
case 1 值 1
语句序列;
break;
case 2 值 2
语句序列;
break;
.....
default
}
**swicth练习,选择操作进行关机、重启、注销**
public static void main(String[] args) {
System.out.println("请选择你要进行的操作:1、关机 2、重启 3、注销 ");
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
try {
//try与下面的catch一起,作用是抓取异常
switch (1) {
case 1:
Runtime.getRuntime().exec("Shutdown -r -t 1000");
//关机 1000秒后
break;
case 2:
Runtime.getRuntime().exec("Shutdown -s -t 1000");
//重启 1000秒后
break;
case 3:
Runtime.getRuntime().exec("Shutdown -a -t 1000");
//注销 1000秒后
break;
}
} catch (Exception e) {
System.out.println("异常了");
//这句话代码 意思是在try catch中,代码运行出错 就打印异常
}
}
//注:关机前保存文档
while与for 循环 循环的三要素:
初始化, 条件表达式,增量
while 循环与 do while循环的区别
while 语法格式:
while(条件表达式)
{语句段增量}
do while语法格式:
do {语句段增量}
while( 条件表达式)
概念:
while 先循环在判断,
do while 先判断再循环
所以在条件为真的情况下,执行的次数一样,在条件为假的情况下,do while会多执行一次
[详细的介绍看这个博客](http://www.cnblogs.com/babywin/p/6868891.html)
//练习 求一到一百的基数和与偶数和
int j = 1;//定义基数
int o = 0;//偶数
int i = 1;//定义变量并初始化
while (i < 100) {//当i小于100时就循环(条件表达式)
i++; //自增 加一
if (i % 2 == 0) {//判断i取余是否等于0
o += i;//是 就算偶数的和
} else {
j += i;//不是 就求基数的和
}
}
System.out.println("偶数的和"+o);
System.out.println("基数的和"+j);
}
**for循环
for(1初始化,2条件表达式,3增量){ 4语句块}
for循环的执执行循序 1>2>4>3>2**
打印九九乘法表
for (int i=1;i<10 i++ ) {
for (int j=1;j<=i j++ ) {
System.out.print(j+"*"+i+"="+i*j+'\t');
//打印一乘到九
}
System.out.println("");//打印换行
}
另外,再送一道题:
用户输入一个数,查询1到 用户输入的这个数 里面有多少个素数
public static void main(){
Scanner sc=new Scanner(System.in);
system.out.println("请输入你要查询在多少以内的素数");
int s=sc.nextInt();
sushu(s);//调用素数方法
}
public static void sushu(int i) {
int s = j;
//定义一个变量,把用户的值装到s里面
int j;
for (i = 1; i <= s; i++) {
// 外层循环控制一到一用户输入的数
boolean f = true;// 定义标签
for (j = 2; j <= i; j++) {
// 内层控制从j到i
if (i % j == 0 && i != j) {// 拿i的值取模(从j到i)
//判断非素数
f = false;
break;
}
}
if (f) {
System.out.println("素数有:" + i);
}
}
}
“`