资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > 后端开发 > Java

## Day04 包装类 Math类、Date类、Character类、Calendar类、String类等常用类 数组

Java 更新时间: 发布时间: 计算机考试归档 最新发布

## Day04 包装类 Math类、Date类、Character类、Calendar类、String类等常用类 数组

Day04 包装类 数组

从本节开始可以使用idea学习

  • 学习8种基本数据的包装类,学习装箱、拆箱,学习包装类常用的方法

    基本数据类型byteshortintlongfloatdoublecharboolean
    包装类ByteShortIntegerLongFloatDoubleCharacterBoolean
    • 基本数据类型没有对象的性质,所以引入了包装类

    • 将基本数据类型转换为包装类就是装箱,装箱分为手动装箱和自动装箱。

    • 将包装类转换为基本数据类型就是拆箱,拆箱也分为手动和自动。

      public class Test001 {
          //学习8种基本数据的包装类,学习装箱、拆箱,学习包装类常用的方法 以int和Integer为例
          public static void main(String[] args) {
              //装箱
              int a = 3;
              //手动装箱
              Integer b = new Integer(a);
              //自动装箱
              Integer c = a;
              //拆箱
              Integer d = 10;
              //手动拆箱
              int e = d.intValue();
              //自动拆箱
              int f = d;
             	//int相关 
              System.out.println("int表示的最大值"+Integer.MAX_VALUE);
              System.out.println("int表示的最小值"+Integer.MIN_VALUE);
          }
      }
      

  • 学习Math类、Date类、Character类、Calendar类等常用类

    • Math类:封装了一些常用的数学运算

      方法描述
      abs()返回参数的绝对值
      random()返回一个随机数0·1
      max(),min()返回两个参数中的最大或最小值
      sin(),cos(),tan(),asin(),acos(),atan()求指定double类型参数的三角函数
      ceil(),floor()对整形变量向上向下取整
      sqrt()求参数的算术平方根
    • Date类和Calendar类:日期相关

      • Long获取从1970年到现在的毫秒数(格林威治时间),Long是其他时间类型的底层,其他类型的日期都是Long封装得来的。

      • Date类型一般用于查看日期,很少用做计算日期。

      • Calendar用来计算时间的,add/set

        public class Test002 {
            public static void main(String[] args) {
                //Math类  封装了常用的数学运算
                System.out.println(Math.random());
                //Date类 日期相关
                //Long 获取日期 格林威治时间 1970到现在毫秒数 Long 所有日期的底层
                Long now = System.currentTimeMillis();
                System.out.println(now);
                //Date获取日期
                Date date = new Date();
                System.out.println(date);
                //Calendar计算日期  add 现有时间加减 set 设置固定时间并计算
                Calendar calendar = Calendar.getInstance();
                //十年后是多少年
                calendar.add(Calendar.YEAR,10);
                System.out.println(calendar.get(Calendar.YEAR));
                //500天前是几号
                calendar.add(Calendar.DAY_OF_MONTH,-500);
                System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
                //set的使用
                calendar.set(Calendar.YEAR,2008);
                System.out.println(calendar.get(Calendar.YEAR));
                calendar.set(Calendar.HOUR_OF_DAY,9);
                System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
                //SimpleDateFormat日期转换 yyyy-MM-dd HH:mm:ss;yy-M-d;yyyy年MM月dd日
                SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                SimpleDateFormat sdf2 = new SimpleDateFormat("yy-M-d");
                SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy年MM月dd日");
                String format1 = sdf1.format(date);
                String format2 = sdf2.format(date);
                String format3 = sdf3.format(date);
                System.out.println(format1+"n"+format2+"n"+format3);
            }
        }
        
    • Character类 :基本数据类型char的包装类

  • 学习数组,二维数组、数组排序、复制数组、Arrays工具类

    • //数组 设置数组大小
      int size = 3;
      //定义数组
      double[] list = new double[size];
      list[0] = 3.2;
      list[1] = 2.3;
      list[2] = 4.4;
      //数组元素求和
      double total = 0;
      for (int i = 0;i
          System.out.println("数组中第"+(i+1)+"个元素是"+list[i]);
          total = total + list[i];
      }
      System.out.println("数组中元素和为"+total);
      //数组排序 从小到大 冒泡排序
      int temp;
      boolean b = true;
      int[] arr = {3,6,8,7,9,5};
      for (int j = 1;j
          for (int i = 1; i < arr.length; i++) {
              if (arr[i - 1] > arr[i]) {
                  temp = arr[i - 1];
                  arr[i - 1] = arr[i];
                  arr[i] = temp;
                  b = false;
              }
          }
          if (b){
              break;
          }
      }
      for (int i = 0;i
          System.out.print(arr[i]+"  ");
      }
      

    • Arrays类  更方便的操作数组 sort排序默认升序 fill赋值 equals比较 binarySearch二分法查找元素
              int[] arr2 = {99,65,8,9,45,7,52,665};
              Arrays.sort(arr2);
              for (int i = 0; i
                  System.out.print(arr2[i]+"  ");
              }
      

  • 学习String类(非常重要)学习他的常用的方法,例如 equals()、compareTo() 等等,多多练习

    • String类 https://www.runoob.com/manual/jdk11api/java.base/java/lang/String.html

          //String类 字符串相关
          //常用方法有 charAt() 返回指定下标字符 equals() 比较两个字符串
          // compareTo() 返回参与比较的前后两个字符串的ASCII码的差值,如果两个字符串首字母不同,则该方法返回首字母的ASCII码的差值。
          //   indexOf() 返回指定字符串第一次出现的索引  isEmpty()  判断是否为空
          //   contains()  判断是否包含指定内容  replace( , )  替换指定字符串
          String str1 = "bilibili";
          String str2 = "idea";
          String str3 = "idea";
          String str4 = "";
          System.out.println(str1.charAt(3));
       	System.out.println(str1.equals(str2));
          System.out.println(str2.equals(str3));	
          System.out.println(str1.compareTo(str2));
          System.out.println(str2.compareTo(str3));
          System.out.println(str4.isEmpty());
          System.out.println(str2.contains("a"));
      }
      

  • 学习StringBuilder、StringBuffer,比较它们的不同

    • String StringBuffer StringBuilder
      • String 是final修饰的 不可变 每次操作都会产生新的引用地址
      • StringBuffer和Stringbuild是在原有的对象上操作的,StringBuffer是synchronized锁修饰的,线程安全的
      • 性能上StringBuilder>StringBuffer>String
      • 使用场景:经常需要改变的字符串内容就是用StringBuffer和StringBuilder,优先使用StringBuffer,多线程使用共享变量是使用StringBuffer。
  • (选做)封装一个工具类StringUtils.java,实现字符串判断空的方法(公共静态方法)

    • public class StringUtils {
          //判断字符串是否为空
          public static boolean isEmp(String str){
              if (str == null || str == ""){
                  return true;
              }
              return false;
          }
      }
      
    • public class Test004 {
          public static void main(String[] args) {
              String str1 = "  ";
              String str2 = null;
              String str3 = "";
              System.out.println(StringUtils.isEmp(str1));
              System.out.println(StringUtils.isEmp(str2));
              System.out.println(StringUtils.isEmp(str3));
          }
      }
      

转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/940747.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【## Day04 包装类 Math类、Date类、Character类、Calendar类、String类等常用类 数组】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2