1.语句总分类图

java 类里面添加自己 java添加语句_java

java 类里面添加自己 java添加语句_java_02

java 类里面添加自己 java添加语句_java 类里面添加自己_03



2.非控制语句

非控制语句不能控制程序执行的流程。
共分为

2.1.空语句

一个分号就是一条空语句

;

2.2.方法调用语句

在方法后加上一个分号,就是方法调用语句

System.out.println();

2.3.方法声明语句

方法头后加分号

public static int max(int num1,int num2) ;

2.4.表达式语句

表达式加分号

z=z+z+z;

2.5.复合语句

被{}包起来的语句,理解为一条语句

{
	z=z+z;
	System.out.println(z);
}

2.6.包命名语句

给包起名字的语句

package java.wang;

2.7.包引用语句

作用是引用包里面的类

import java.liu.*;

3.选择语句

3.1. if语句

if语句格式

if(表达式)
{
	语句组;
}

表达式值为true时执行语句组

3.2. if----else 语句

格式

if (条件表达式)
{
	语句组1
}
else
{
	语句组2
}

当if条件表达式为true时执行语句组1,为false时执行语句组2.

3.3.if else if 语句

格式

if (条件表达式1)
{
	语句组1
}
else if(条件表达式2)
{
	语句组2
}
else if(条件表达式3)
{
	语句组3
}
else
{
	语句组4
}

当条件表达式1为true时执行语句组1,
当条件表达式1为false,且条件表达式2为true时,执行语句组2,
当条件表达式1和条件表达式2为false,且条件表达式3为true时,执行语句组3.
当条件表达式1、条件表达式2、条件表达式3,均为false时,执行语句组4.

3.4.switch 语句

switch 根据表达式的值来是否与某个常量匹配来进行选择,其中表达式的值只能是字符、数字或字符串

格式

switch(表达式)
{
	case 常量1: 语句组1;break;
	case 常量2: 语句组2;break;
	~~~
	case 常量3: 语句组3;break;
	{
		default: 默认语句组;
	}
}

当表达式值为常量1时,执行语句组1,
当表达式值为常量2时,执行语句组2,
当表达式值为常量3时,执行语句组3,
当表达式值为常量n时,执行语句组n,
当表达式值不为任何一个常量时,执行默认语句组。

4.循环语句

4.1.for语句

4.1.1.for语句格式

for(表达式1;表达式2;表达式3)
{
	语句组;     //循环体
}

表达式1:是一个数值,对变量进行初始化,只执行一次。
表达式2:是一个布尔值,当表达式2为true时,流程进入循环体
表达式3:调整表达式2的值

4.1.1.for语句流程

首先计算表达式1,完成变量初始化,然后测试表达式2的值,若表达式2的值为true,则流程进入循环体执行语句组,执行完语句组,紧接着进表达式3计算,这样第一轮循环就结束了,下一轮从表达式2开始若表达式2依旧为true则再次进入循环体,否则结束整个循环。

java 类里面添加自己 java添加语句_eclipse_04


4.3.while 语句

4.3.1.while 格式

while(条件表达式)
{
	语句组;    //循环体
}

4.3.2.while 执行流程

首先计算表达式的值,若其值为true,则流程进入循环体执行语句组,语句组执行完后进入下一轮循环,即再次计算条件表达式的值,若其值为true,将再次执行语句组,否则跳出while语句

java 类里面添加自己 java添加语句_spring_05

4.4.do while 循环表达式

4.4.1.do while 格式

do{
	语句组;
}while(条件表达式);

while 和 do while 的区别

while循环可能一次也不执行,do-while 至少会执行一次

java 类里面添加自己 java添加语句_java_06

5.跳转语句

5.1.break语句

只能在循环体中使用,执行时立即终止循环,跳出循环体

5.2.continue 语句

只能在循环体中使用,执行时,跳过本次循环

5.3.return 语句

返回方法的值

6.课后习题

1.求1!+3!+13!

参考:

public class qiu
{
	public static void main(String[] args)
	{
		long sum=0;
		for(int i=1;i<=13;i+=2)
		{
			int k=i;
			for(int j=1;j<i;j++)
			{
				k*=j;	
			}
			sum+=k;
		}
		System.out.println("1~13阶乘为:"+sum);
	}

}

2.分别用do-while和for循环求1+1/2!+1/3!…前二十项之和。

参考:

public class While
{
	public static void main(String[] args)
	{
		int i=1;
		double sum=0;
		do{
			double k=i;
			int j=1;
			do{
				k*=j;
				j++;
			}while(j<i);
			sum+=k;
			i++;
		}while(i<=20);
		System.out.println("前二十项为:"+sum);
	}
}
public class For
{
	public static void main(String[] args)
	{
		double sum=0;
		for(int i=1;i<=20;i++)
		{
			double k=i;
			for(int j=1;j<i;j++)
			{
				k*=j;
			}
			sum+=k;
		}
		System.out.println("前二十项为:"+sum);
	}
}

3.编写程序对三个整数进行排序,要求三个整数必须键盘输入

import java.util.Scanner;
public class sort
{
	public static void main(String[] args)
	{
		Scanner reader=new Scanner(System.in);

		System.out.println("input into");
		double num1=reader.nextDouble();
		double num2=reader.nextDouble();
		double num3=reader.nextDouble();
		
		if(num1>num2)
		{
			num1+=num2;
			num2=num1-num2;
			num1=num1-num2;
		}
		if(num1>num3)
		{
			num1+=num3;
			num3=num1-num3;
			num1=num1-num3;
		}
		if(num2>num3)
		{
			num2+=num3;
			num3=num2-num3;
			num2=num2-num3;
		}
		System.out.println(num1+"<"+num2+"<"+num3);
	}
}

4.编写程序,输入个数不确定的整数,并判断输入整数和负数的个数,输入0时结束程序

参考:

import java.util.Scanner;
public class panduan
{
	public static void main(String[] args)
	{
		int num2=0;
		int num3=0;
		double num;
		Scanner reader=new Scanner(System.in);
		do{
			System.out.println("please into (0 is finish)");
			double num1=reader.nextDouble();
			if(num1<0)
				num3++;
			if(num1>0)
				num2++;
			num=num1;
		}while(num!=0);
		
		System.out.println("positive numver:"+num2);
		System.out.println("negative numver:"+num3);

	}
}

5.编写程序,从键盘输入整数并求他们的总和和平均值,输入0时程序结束。

参考:

import java.util.Scanner;
public class sumandavg
{
	public static void main(String[] args)
	{
		double sum=0;
		int count=0;
		int num;
		Scanner reader=new Scanner(System.in);
		do{
			System.out.println("please into (0 is finish)");
			int num1=reader.nextInt();
			sum+=num1;
			count++;
			num=num1;

		}while(num!=0);
		
		System.out.println("sum:"+sum);
		System.out.println("avg:"+sum/count);

	}
}

6.用while循环求m2大于12000的最小数m.

参考

public class M
{
	public static void main(String[] args)
	{
		int m=1;
		while(m*m<=12000)
		{
			m++;
		}

		System.out.println("min:"+m);
		
	}
}

7.编写程序输入一个整数,显示它所有的素数因子,如输入120,显示2,2,2,3,5

参考:

import java.util.Scanner;
public class Factor
{
	public static void main(String[] args)
	{	
		Scanner reader=new Scanner(System.in);
		System.out.println("please into");
		int num=reader.nextInt();
		while(num>1)
		{
			for(int i=2;i<=num;i++)
			{
				if(num%i==0)
				{
					System.out.print(i+" ");
					num/=i;
					break;
				}
			}
		}

	}
}

8.写一个嵌套for的循环打印下列图案

1
1 2
1 2 3
1 2 3 4

参考:

import java.util.Scanner;
public class Tuan
{
	public static void main(String[] args)
	{	
		for(int i=1;i<=4;i++)
		{
			for(int j=1;j<=i;j++)
			{
				System.out.print(j+" ");
			}
			System.out.println();
		}
	}
}

9.分别用switch和if语句写两个句子,说明它们在应用中的优缺点

参考:略

10.分别用do-while和while语句编写程序,求3*n!

参考:

import java.util.Scanner;
public class Three
{
	public static void main(String[] args)
	{	
		Scanner reader=new Scanner(System.in);
		System.out.println("please into ");
		int n=reader.nextInt();
		double sum=3;
		int i=1;
		while(i<=n)
		{
			sum*=i;
			i++;
		}
		System.out.println(sum);
	}
}
import java.util.Scanner;
public class Three1
{
	public static void main(String[] args)
	{	
		Scanner reader=new Scanner(System.in);
		System.out.println("please into ");
		int n=reader.nextInt();
		double sum=3;
		int i=1;
		do{
			sum*=i;
			i++;
		}while(i<=n);
		System.out.println(sum);
	}
}

11.写一个例子程序,包含return、break、continue

参考:略

12.假定y为3,以下表达式运算后,y的值什么?表达式的值是多少?

(y>1)&(y++>1)

参考:4 true

13.假定y为8,以下表达式运算后,y的值什么?表达式的值是多少?

(y>1)&&(y++>1)
参考:true 9(一般答8,但我实际操作为9)

14.switch(x)语句中,变量x应该是什么数据类型?如果在执行case语句后没有使用break,那么下一条要执行的语句是什么?可以把switch语句转换成等价的if语句吗?反过来可以吗?使用switch语句的优点是什么?

参考:略

15.使用switch语句重写下列if语句,并画出switch语句的流程图

if(a==1) x+=2;
else if(a==2) x+=3;
else if(a==3) x+=4;
else if(a==4) x+=5;

参考:

// if(a==1) x+=2;
// else if(a==2) x+=3;
// else if(a==3) x+=4;
// else if(a==4) x+=5;

import java.util.Scanner;
public class Switch
{
	public static void main(String[] args)
	{	
		int x=1;
		int a=3;	
		switch(a)
		{
			case 1:x+=2;break;
			case 2:x+=3;break;
			case 3:x+=4;break;
			case 4:x+=5;break;
		}
		System.out.println(a);
		System.out.println(x);
	}
}

16.使用条件运算符重写下列if语句

if(count % 8 == 0) System.out.println(count+"\n");
else System.out.println(count+" ");

参考:

count%8==0 ? System.out.println(count+"\n");:System.out.println(count+" ");

17.解释下列代码的输出

int i=2;System.out.println(--i+i+i++);
System.out.println(i+ ++i);

参考

3
5

18.下列语句的执行结果

for(int i = 1;;)System.out.println(i+ ++i);

参考:死循环

19.如果一个变量是在for循环中声明的,退出循环后还能使用该变量吗?

参考:不能