JAVASE 基础知识模块五

JAVASE 基础模块五

循环

  • 死循环

     while (true) {
    System.out.println("bzpg,tcdj");}
    for (; ; ) {  
    System.out.println("bzpg,tcdj");}
    
  • 如果有多层循环嵌套 可以给循环起名字 通过循环的名字来结束循环

    break xx;
    
  • 转义字符

    • ‘\t’ tab键的位置
    • ‘\n’ 换行
  • 快捷键

    • 快速生成循环语句 100.for.i
    • 反向 10.forr转义字符’\t’ tab键的位置’\n’ 换行
  • 控制跳转语句的分类

    public class LianXi {
        public static void main(String[] args) {
            for (int x = 1; x <= 10; x++) {
                if (x % 3 == 0) {
                    continue;
                    //break;
                    // System.out.println("bzpg 天长地久");}
    System.out.println("第" + x + "次输出:" + "bzpg 天长地久");}}}
    
    • break 中断 跳出循环

      运行结果:
      第1次输出:bzpg 天长地久
      第2次输出:bzpg 天长地久
      进程已结束,退出代码0
      

      3时break

    • continue 继续 越过此次循环进行下一顺延

      运行结果:
      第1次输出:bzpg 天长地久
      第2次输出:bzpg 天长地久
      第4次输出:bzpg 天长地久
      第5次输出:bzpg 天长地久
      第7次输出:bzpg 天长地久
      第8次输出:bzpg 天长地久
      第10次输出:bzpg 天长地久
      进程已结束,退出代码0
      

      越过369

    • 多次输出

      运行结果:
      第1次输出:bzpg 天长地久
      第2次输出:bzpg 天长地久
      bzpg 天长地久
      第3次输出:bzpg 天长地久
      第4次输出:bzpg 天长地久
      第5次输出:bzpg 天长地久
      bzpg 天长地久
      第6次输出:bzpg 天长地久
      第7次输出:bzpg 天长地久
      第8次输出:bzpg 天长地久
      bzpg 天长地久
      第9次输出:bzpg 天长地久
      第10次输出:bzpg 天长地久
      进程已结束,退出代码0
      

      重复369

方法

  • 概念

    • 方法就是完成特定功能的代码块在很多语言中都有函数的定义,但是在咱们JAVA语言中,我们将其称之为方法。
  • 格式

    修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2 ....){
    		方法体;
    		return 返回值;	}
    (1): 修饰符 			public static
    (2): 返回值类型 		   用于限定返回值的数据类型
    (3): 方法名			方便调用方法
    (4): 参数类型 			限定调用方法时传入参数的数据类型
    (5): 参数名 			是一个变量,接收调用方法时传入的参数					       
    (6): 方法体 			完成功能的代码
    (7): return 		   结束方法以及返回方法指定类型的值 
    (8): 返回值 			就是功能的结果,由return带回
    
  • 注意事项

    • 方法不调用不执行

    • 方法与方法是平级关系,不能嵌套定义

    • 方法定义的时候参数之间用逗号隔开

    • 方法调用的时候不用在传递数据类型

    • 在调用带有参数的方法时 必须传入跟形参类型,形参个数一致的实参

    • 实参可以传变量 也可以传常量

    • 调用方法时,传过来的实际参数

    • 形参是int 可以传byte short int 当然类型一致 永远不会出错

    • 方法的返回值类型 void就是该方法没有明确返回值类型

    • 一旦我们明确了这个方法的返回值类型 那么这个方法必须使用return关键字 返回一个与明确类型一致的值

      1. return 结束方法并返回结果

        public class FangFa2 {
            public static void main(String[] args) {
                int a = add(20, 30);
                System.out.println(a); }
        public static int add(int x, int y) {
                int sum = x + y;
                System.out.println(sum);
                return sum;}}
        
        运行结果:
        50
        50
        进程已结束,退出代码0
        
    • 当我们调用这个方法时 如果这个方法有返回值 我们就可以接受这个返回值

    • 这个方法返回什么类型 就用什么类型接受

      1. 设计无参无返回值的方法
      2. 设计无参有返回值的方法
      3. 设计有参无返回值的方法
      4. 设计有参有返回值的方法
    • 当设计一个方法时 进行考虑这个方法要不要参数 要几个参数 参数类型是什么 要不要返回值 返回值类型是什么

      1. 当你的返回值类型是void时 return可以不写

      2. 获取两个数的最大值

        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println("请输入第一个数");
            double v = sc.nextDouble();
            Scanner sc1 = new Scanner(System.in);
            System.out.println("请输入第二个数");
            double v1 = sc.nextDouble();
            double x= getMax(v,v1);
            System.out.println(x);}
        public static double getMax(double x,double y) {
         return x>y?x:y;}
        
        运行结果:
        请输入第一个数
        3.15
        请输入第二个数
        3.16
        3.16
        进程已结束,退出代码0
        
      3. 判断两个数是否相等 需要返回值

        public class XiangTong {
            public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入第一个数");
                double v = sc.nextDouble();
                Scanner sc1 = new Scanner(System.in);
                System.out.println("请输入第二个数");
                double v1 = sc.nextDouble();
                boolean c=equal(v,v1);
                System.out.println(c); }
        public static boolean equal(double x,double y) {
        return x==y;}}
        
        运行结果:
        请输入第一个数
        2.14
        请输入第二个数
        2.14
        true
        进程已结束,退出代码0
        
      4. 根据输入的数字打印对应的乘法表

        public class ChengFa {
            public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入需要打印的乘法表位数");
                int v = sc.nextInt();
                chengFa(v);}
         public static void chengFa(int a) {
        for(int i=0;i<=a;i++){
        for(int c=1;c<i+1;c++){
        System.out.print(c+"*"+i+"="+i*c+"\t\t");}
        System.out.println();}}}
        
        运行结果:
        请输入需要打印的乘法表位数
        7
        1*1=1		
        1*2=2		2*2=4		
        1*3=3		2*3=6		3*3=9		
        1*4=4		2*4=8		3*4=12		4*4=16		
        1*5=5		2*5=10		3*5=15		4*5=20		5*5=25		
        1*6=6		2*6=12		3*6=18		4*6=24		5*6=30		6*6=36		
        1*7=7		2*7=14		3*7=21		4*7=28		5*7=35		6*7=42		7*7=49	
        进程已结束,退出代码0
        
      5. 根据输入的数字输出*

        public class Xing {
            public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入行数");
                int v = sc.nextInt();
                Scanner sc1 = new Scanner(System.in);
                System.out.println("请输入列数");
                int v1 = sc1.nextInt();
                xing(v,v1);}
            public static void xing(int a,int b) {
                for(int i=1;i<=a;i++){
                    for(int c=1;c<=b;c++){
                        System.out.print("*");}
                    System.out.println();}}}
        
        运行结果:
        请输入行数
        6
        请输入列数
        6
        ******
        ******
        ******
        ******
        ******
        ******
        进程已结束,退出代码0
        

        外循环控制行数,内循环控制列数

    • 方法重载 允许一个类中定义多个同名方法 只要他们的参数个数或者参数类型不一样就可以

      • 如果有重载 自动匹配哪个方法更合适

      • 求多个数相加

        public class ChongZai {
            public static void main(String[] args) {
                //求多个数相加
                add(10, 20);
                add(23.55, 66);
                add(1, 2, 3); }
            public static int add(int x, int y) {
                int sum = x + y;
                System.out.println(sum);
                return sum; }
            public static int add(int x, int y, int c) {
                int sum = x + y + c;
                System.out.println(sum);
                return sum;}
            public static double add(double x, int y) {
                double sum = x + y;
                System.out.println(sum);
                return sum; }
            public static int add(int x, int y, int c, int g) {
                int sum = x + y + c + g;
                System.out.println(sum);
                return sum; }}
        
        运行结果:
        30
        89.55
        6
        进程已结束,退出代码0
        

数组

  • 数组 可以看作一个容器 可以用来存储多个同一种数据类型的元素

  • 数组可以存储基本数据类型 也可以存储引用数据类型

  • 定义数组的语法格式

            int[] arr=new int[5];
            int arr1[]=new int[5];
    
  • 在JAVA中 数组必须初始化才能使用

  • 数组的初始化 就是要在内存中为数组开辟空间 并为数组中的元数进行赋值

    1. 动态初始化数组语法:由我们指定数组的长度 由系统为数组的元素复制默认值

       public class ShuZu {
          public static void main(String[] args) {
              int[] arr = new int[5];
              for (int i = 0; i < 5; i++) {
                  System.out.print(arr[i]);}
              System.out.println();
              int arr1[] = new int[5];
              double[] x1 = new double[7];
              for (int i = 0; i < 7; i++) {
                  System.out.print(x1[i]);}
              System.out.println();
              boolean[] x2 = new boolean[7];
              for (int i = 0; i < 7; i++) {
                  System.out.print(x2[i]); }}}
      

      6 就是我们指定的数组长度

      运行结果:
      00000
      0.00.00.00.00.00.00.0
      falsefalsefalsefalsefalsefalsefalse
      进程已结束,退出代码0
      
    2. 静态初始化数组语法

      public class JinTai {
          public static void main(String[] args) {
              int[] arr = new int[]{10, 30, 55, 66, 88, 5};
              System.out.println(arr.length);
              for (int i = 0; i < arr.length; i++) {
                  System.out.print(arr[i] + "\t\t"); }
              double[] arr2 = {1, 55.8, 8.3, 88.2, 66, 6, 5, 58, 55};
              System.out.println(arr2.length);
              for (int i = 0; i < arr2.length; i++) {
                  System.out.print(arr2[i] + "\t\t"); }}}
      
      运行结果:
      6
      10		30		55		66		88		5		9
      1.0		55.8		8.3		88.2		66.0		6.0		5.0		58.0		55	
      进程已结束,退出代码0
      
  • 数组的遍历

    • 通过for循环来进行数组的遍历

      快捷方式 arr2.length.fori

      //反向遍历
      public class JinTai {
          public static void main(String[] args) {
              double[] arr2 = {1, 55.8, 8.3, 88.2, 66, 6, 5, 58, 55};
              System.out.println(arr2.length);
              for (int i = arr2.length - 1; i >= 0; i--) {
                  System.out.print(arr2[i] + "\t\t"); } }}
      
      运行结果:
      9
      55.0		58.0		5.0		6.0		66.0		88.2		8.3		55.8		1.0		
      进程已结束,退出代码0
      

调用方法求数组的最大最小值

public class JinTai {
    public static void main(String[] args) {
        double[] arr2 = {1, 55.8, 8.3, 88.2, 66, 6, 5, 58, 55};
        getMaxMin(arr2);}
    public static void getMaxMin(double arr2[]) {
        double max = arr2[0];
        double min = arr2[0];
        System.out.println(arr2.length);
        for (int i = arr2.length - 1; i >= 0; i--) {
            if (max < arr2[i]) {
                max = arr2[i];}
            if (min > arr2[i]) {
                min = arr2[i];}
        System.out.print(arr2[i] + "\t\t");}
        System.out.println();
        System.out.println("最大值" + max);
        System.out.println("最小值" + min);
        System.out.println("okay");}}
运行结果:
9
55.0		58.0		5.0		6.0		66.0		88.2		8.3		55.8		1.0		
最大值88.2
最小值1.0
okay
进程已结束,退出代码0

数组的反转 原数组内操作

public class FanZhuan {
    public static void main(String[] args) {
        double[] arr2 = {1, 55.8, 8.3, 88.2, 66, 6, 5, 58, 55};
        fanZhuan(arr2); }
    public static void fanZhuan(double arr2[]) {
        System.out.println(arr2.length);
        double m;
        for (int i = 0; i < arr2.length / 2; i++) {
            m = arr2[i];
            arr2[i] = arr2[arr2.length - 1 - i];
            arr2[arr2.length - 1 - i] = m;}
        System.out.println();
        for (int i = 0; i < arr2.length; i++) {
            System.out.print(arr2[i] + "\t\t"); }}}
运行结果:
9
55.0		58.0		5.0		6.0		66.0		88.2		8.3		55.8		1.0		
进程已结束,退出代码0

待续

猜你喜欢

转载自blog.csdn.net/cx9977/article/details/107365442
今日推荐