1.二维数组–数组元素为一维数组的数组
2.二维数组的应用
3.方法–提高代码复用性
4.方法的调用
import java.util.Scanner;
public class MethodDemo {
//提示键---Alt+?
//在编写代码的时候就会进行编译
public static void main(String[] args) {
//打印n行m列的星星
/*for(int i=0;i<3;i++){
for(int j=0;j<4;j++){
System.out.print("*");
}
//换行
System.out.println();
}
System.out.print("-----------");*/
Scanner sc = new Scanner(System.in);
System.out.print("请输入行数:");
int n = sc.nextInt();
System.out.print("请输入列数:");
int m = sc.nextInt();
//单独调用
printStar(n,m);
//输出调用
System.out.print(Add(n,m));
System.out.print(isPrime(7));
//赋值调用
//int result = Add(n,m);
}
//打印星星的方法
//返回值数据类型需要明确
//参数列表需要明确
public static void printStar(int x,int y){
System.out.println("-----------");
for(int i=0;i<x;i++){
for(int j=0;j<y;j++){
System.out.print("*");
}
//换行
System.out.println();
}
System.out.println("-----------");
}
//求两个整数之和
public static int Add(int x,int y) {
int sum = x+y;
return sum;
}
//求一个整数是否是偶数
public static boolean isOuShu(int m){
if((m&1)==0){
return true;
}else{
return false;
}
}
//求一个数是否是质数
public static boolean isPrime(int n){
//判断范围
if(n<2){
return false;
}
for(int i=2;i<=n/2;i++){
//判断
if(n%i==0){
return false;
}
}
return true;
}
}
5.方法的重载
6.方法的传值
7.方法的递归
package cn.tedu.method;
public class MethodDemo4 {
public static void main(String[] args) {
System.out.println(diGui(100000));
System.out.println(diGuiC(5));
}
//递归方法
public static int diGui(int n){
//判断--递归的出口
if(n==1){
return 1;
}
return n+diGui(n-1);
}
//递归方法求10的阶乘
public static int diGuiC(int n){
//判断--递归的出口
if(n==1){
return 1;
}
return n*diGuiC(n-1);
}
}
测试题
任何大于6的偶数都能分成两个质数之和,如 8=5+3, 求100以内的这样的数
public class MethodText {
public static void main(String[] args) {
//范围
for(int i=8;i<=100;i+=2){
//表示i分成两个数之和其中一个数
for(int j=2;j<=i/2;j++){
if(isPrime(j)&&isPrime(i-j)){
System.out.println(i+"="+j+"+"+(i-j));
}
}
}
}
//求一个数是否是质数
public static boolean isPrime(int n){
//判断范围
if(n<2){
return false;
}
for(int i=2;i<=n/2;i++){
//判断
if(n%i==0){
return false;
}
}
return true;
}
}