JAVA-包装类

1、 包装类

1.1 包装类的对应如下:

byte     java.lang.Byte(父类Number)

short    java.lang.Short(父类Number)

int      java.lang.Integer(父类Number)

long     java.lang.Long(父类Number)

float     java.lang.Float(父类Number)

double    java.lang.Double(父类Number)

boolean  java.lang.Boolean(父类Object)

char     java.lang.Character(父类Object)

1.2 自动封箱/拆箱

  //如下,我们可以直接把基本数据类型赋值给包装类,这种情况我们自动封箱
  int i=1;
  integer iI=i;
  //有自动封箱肯定就有自动拆箱,比如如下代码,我们吧integer的对象赋值给int基本数据类型
  integer iJ=1;
  int J=iJ;

1.3 构造方法

  public Type(type value){};
  //如
  Integer integer = new Integer(1);
  ​
  public Type(String value){};
  //如
  Integer integer1=new Integer(1);

Boolean类构造方法参数为String类型是,若该字符串内容为true(不考虑大小写),则该Boolean对象表示true,否则表示false

当Number包装类(整数和浮点)构造方法参数为String类型时,字符串不能为null,且该字符串必须可解析为相应的基本数据类型的数据,否则编译不通过,运行时会抛出NumberFormatException异常

1.4、 常用方法


  //从包装类转到基本数据类型
  Integer integer=new Integer(1);
  int i=integer.intValue();
  ​
  //从基本数据类型转化为包装类
  Integer intValue= Integer.valueOf(21);
  //从String转化为包装类
  Integer inValue= Integer.valueOf("21");
  
  byteValue(),
  intValue(),
  longValue(),
  shortValue(),
  doubleValue(),
  floatValue(),
  charValue(),
  booleanValue
  
  //将包装类类型转化为String
  //toString();方法,将值转化为String类型,如:
  Integer integer=new Integer(1);
  String i=integer.toString();
  ​
  //将String转化为基本数据类型
  int num=Integer.parseInt("36");
  boolean bool=boolean.parseBoolean("false")
  ​
  //从基本数据类型到String
  //使用字符串连接符(+)可以实现
  String s=1+"";

 

2 枚举类型

2.1 约定定义类的属性,如:


  public enum Ganders{
      Male,Female
  }
  ​
  public class User{
      private Genders sex;
      
      public Genders getsex(){
          return sex;
      }
      
      public void setSex(Genders sex){
          this.sex=sex;
      }
  ​
  }
  
  public static void main(String[] args){
      User uesr=new User();
      //此时我们想这个属性添加值,只可以添加没居中的数据
      user.setSex(Geanders.Male);
      //其他添加方式都是错的
      //user.setSex(1);
      //user.setSex("男性");
      //user.setSex('男');
  }

2.2 配合switch使用

public enum Week{
      Mon,Tue,WED,THU,FRI,SAT,SUN
  }
  pulic void doWhat(Week day){
      //使用枚举
      switch(day){
          case MOM:
          case TUE:
          case WED:
          case THU:
          case FRI:
              System.out.println("工作日,努力写代码!");
              break;
          case SAT:
              System.out.println("星期六,休息,睡觉!");
              break;
          case SUN:
              System.out.println("星期六,休息,看电影!");
              break;
          default:
              System.out.println("地球上的一个星期只有7天!");
      }
  }
  
  public static void main(String[] args){
      WeekDemo2 wd=new WeekDemo2();
      wd.doWhat(Week.FRI);
  }

3、 Math类

 
  //获取自然对数
  double e=Math.E;
  //获取圆周率
  double pi=Math.PI;
  ​
  //返回绝对值
  //返回3.5
  double d=Math.abs(-3.5);
  ​
  //比较两个数,返回大的那个数
  //返回80.5
  double dMax=Math.max(2.5,80.5);
  ​
  //随机数
  int random=(int)(Math.random()*10 ); //生成一个0-9之间的随机数
  ​
  //等等等等,很对和算法有关的方法,都在这个类中,详见Java Api
  java.lang.Math

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值