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;
        }
    }
    
    
    • 总结:方法的参数为基本类型时,传递的是数据值;方法的参数为引用类型时,传递的是地址值。
  • 相关阅读:
    atitit.nfc 身份证 银行卡 芯片卡 解决方案 attilax总结
    atitit.php 流行框架 前三甲为:Laravel、Phalcon、Symfony2 attilax 总结
    Atitit.执行cmd 命令行 php
    Atitit. 图像处理jpg图片的压缩 清理垃圾图片 java版本
    atitit。企业组织与软件工程的策略 战略 趋势 原则 attilax 大总结
    atitit. 管理哲学 大毁灭 如何防止企业的自我毁灭
    Atitit.java的浏览器插件技术 Applet japplet attilax总结
    Atitit.jquery 版本新特性attilax总结
    Atitit. 软件开发中的管理哲学一个伟大的事业必然是过程导向为主 过程导向 vs 结果导向
    (转)获取手机的IMEI号
  • 原文地址:https://www.cnblogs.com/SmithBee/p/12838748.html
Copyright © 2011-2022 走看看