zoukankan      html  css  js  c++  java
  • java基础

    java 基础

    方法(Method)

    • 格式:
      public static 数据类型 Method(数据类型 参数,...){
          方法体;
          return ...;
      }
    
    • 示例:
      package com.smithbee.day01;
      
      /*
      题目描述
      用一个方法判断两个数字是否相同
      */
      
      public class Demo03JudgNumIfSame {
          public static void main(String[] args) {
              ifSame(1,10);
      
              System.out.println("============");
              System.out.println(numSame(10,20));
      
          }
          public static void ifSame(int num1,int num2){
              if(num1 == num2){
                  System.out.println("输入的两个数字相同");
              }else {
                  System.out.println("输入的两个数字不相同");
              }
          }
      
          public static boolean numSame(int num1,int num2){
              //第一种方法
            /*  boolean same ;
              if(num1 == num2){
                  same = true;
              }else {
                  same = false;
              }*/
      
              //第二种方法
      //        boolean same = num1 == num2 ? true : false;
      
              //第三种方法
      //        boolean same = num1 == num2;
      
              //第四种方法
              return num1 == num2;
      
      
          }
      }
      
    

    方法重载(Overload)

    • 格式:指在同一个类中,允许存在1个以上的同名方法,只要他们的参数列表不同即可,与修饰符和返回值类型无关。
    • 参数列表:
      • 个数不同
    • 数据类型不同
      • 参数顺序不同
    • 示例:
    package com.smithbee.day01;
    /*
    方法重载练习:
    用方法重载实现println这个实例
    */
    public class Demo06MethodOverLoad {
        public static void main(String[] args) {
            achievePrint(10);
            achievePrint(19.3);
            achievePrint('a');
            achievePrint(true);
            
    
        }
    
        //定义相同的achievePrint
        public static void achievePrint(byte a){
            System.out.println(a);
        }
        public static void achievePrint(short a){
            System.out.println(a);
        }
        public static void achievePrint(int a){
            System.out.println(a);
        }
        public static void achievePrint(long a){
            System.out.println(a);
        }
        public static void achievePrint(float a){
            System.out.println(a);
        }
        public static void achievePrint(double a){
            System.out.println(a);
        }
        public static void achievePrint(char a){
            System.out.println(a);
        }
        public static void achievePrint(boolean a){
            System.out.println(a);
        }
    }
    
    
    • IDEA小技巧:
      • 使用快捷键,shift + F6 可以选中更改相同的字段
      • 按住ctrl ,点击Java中的方法,可以查看源码
      • for循环,快捷键 次数.fori 直接生成

    数组

    定义

    • 定义格式:
      • 动态:数据类型[] 数组名字 = new 数据类型[长度];
      • 静态:数据类型[] 数组名字 = new 数据类型[]{元素1,元素2,...};
      • 静态的省略形式:数据类型[] 数组名字 = {元素1,元素2,...};
    • 示例:
    package com.smithbee.day01;
    
    public class Demo07ArrayDefine {
        public static void main(String[] args) {
            //第一种方式定义数组,动态
            int[] num = new int[2];
            //第二种方式定义数组,静态
            String[] idea = new String[]{"I am a student.","I like java.","I am a programmer."};
            //第三种方式定义数组,静态的省略
            int[] num1 = {1,2,3};
            
            //前两种定义的分开形式
            int[] num7;
            num7 = new int[7];
            
            String[] idea1;
            idea1 = new String[]{"come","on","baby!"};
        }
    }
    
    
    • 注意事项:
      • 数组一旦确定,长度则不可变。
      • 动态和静态定义的格式,可以写成两个语句,而静态的省略形式则不行,在上面的是示例中会展示。
      • array.fori 循环的快捷键

    数组的访问

    package com.smithbee.day01;
    
    public class Demo08ArrayUse {
        public static void main(String[] args) {
            //数组的访问
            int[] array = new int[]{10,20,30};
            System.out.println(array); //[I@1e643faf 这是内存地址哈希值
            System.out.println(array[0]);//10
    
            System.out.println("==================");
            //动态定义数组,访问
            int[] array1 = new int[3];
            System.out.println(array1[0]);//0  系统默认值
            System.out.println(array1[1]);//0
            System.out.println(array1[2]);//0
    
            //系统默认值:初始化数组时,系统会赋值默认值
            /*
            整数:0
            浮点数:0.0
            字符型:“u0000”
            布尔型:false
            引用型:null
            */
    
            //静态定义数组时也有默认值的过程,只不过系统自动将默认值转化为{}内的具体数值了
        }
    }
    
    

    数组用作方法的参数类型的区别

    • 参数为基本类型
    package com.smithbee.day01;
    
    public class Demo11Result {
        public static void main(String[] args){
            int a = 1;
            int b = 2;
            System.out.println(a);  //1
            System.out.println(b);  //2
            change(a,b);
            System.out.println(a);  //1
            System.out.println(b);  //2
    
    
        }
        public static void change(int a,int b){
            a = a + b;
            b = b + a;
    
    
        }
    
    }
    
    
    • 参数为引用类型(以数组为例)
    package com.smithbee.day01;
    
    public class Demo12Result01 {
        public static void main(String[] args) {
            int[] arr = new int[]{1,3,5};
            System.out.println(arr[0]);   //1
            System.out.println("====================");
            change(arr);
            System.out.println(arr[0]);   //100
        }
        public static void change(int[] arr){
            arr[0] = 100;
        }
    }
    
    
    • 总结:方法的参数为基本类型时,传递的是数据值;方法的参数为引用类型时,传递的是地址值。
  • 相关阅读:
    抽奖代码
    org.hibernate.AssertionFailure: null id in com.you.model.User entry (don't flush the Session after a
    Cannot add or update a child row: a foreign key constraint fails
    SyntaxError:identifier starts immediately after numeric literal
    too much recursion
    微信处理红包
    minerd
    minerd
    kill常用
    阿里云centos 6安装Nginx+PHP+MySQL
  • 原文地址:https://www.cnblogs.com/SmithBee/p/12838748.html
Copyright © 2011-2022 走看看