`

类_装_封

阅读更多
1.封装类作用
  将基本数据类型转换成对象
  封装类提供了一系列实用的方法:parseInteger()

2.基本数据类型对应封装类
  boolean   Boolean       new Boolean(true);
  char      Character     new Character('a');
  byte      Byte          new Byte((byte)1);
  short     Short         new Short((short)1);
  int       Integer       new Integer(1);
  long      Long          new Long(1);
  float     Float         new Float(1.0f);
  double    Double        new Double(1.0);

3.继承关系
   Boolean和Character继承Object,其他封装类继承Number类
   Integer a = Integer.intValue("123");
   int b = Integer.parseInt("123");

4.特点
   所有的封装类都是final,不能创建子类
   JDK1.5之后,允许基本数据类型和封装数据类型混合运算

5.其他特殊类
   Math类---------------------
   Math类提供了两个静态常量:E(自然对数),PI(圆周率)
   Math类是final类型,不能被继承,构造方法是private,也不能被实例化
   Math类的主要方法:
    abs():返回绝对值
    ceil():返回大于或等于参数的最小整数(参数和返回类型都是double)
    floor():返回小于或等于参数的最大整数(参数和返回类型都是double)
    max():返回两个参数的最大值
    min():返回两个参数的最小值
    random():返回0.0到1.0之间的double类型的随机数
    round():返回四舍五入的整数值(参数为double,返回long,参数为float,返回int)
    sin():正弦函数
    cos():余弦函数
    tan():正切函数
    exp():返回自然对数的幂
    sqrt():返回平方根函数
    pow():幂运算
    示例:
        Math.round(3.3);//3
       Math.round(-3.3);//-3
       Math.ceil(3.3);//4.0
       Math.ceil(3.3);//-3.0
       Math.floor(3.3);//3.0
       Math.floor(3.3);//-4.0

   日期类型------------------
      Date date = new Date();
     SimpleDateFormat sdf = new SinpleDateFormat("yyy-MM-dd HH:mm:ss E");
     sdf.format(date);//2011-01-01 08:10:10 星期一
     
     DateFormat类-----------------
     有一个静态方法设置日期格式
      DateFormat.getDateTimeInstance(int dateStyle,int timeStyle);
     示例:DateFormat.getDateTimeInstance(DateFormat.SHORT,DateFormat.SHORT);
     将字符串装换成日期类型
     示例:new SimpleDateFormat("yyy-MM-dd").parse("2011-01-01");
     计算两个日期相隔的天数
      示例:DataFormat df = new DataFormat("yyyy-MM-dd");
          Date d1 = df.parse("2011-01-02");
          Date d2 = df.parse("2011-02-02");
          long p = d2.getTime()-d1.getTime();
          天数 = p/(1000*60*60*24)

     BigDecimal类-------------------
      add(BigDecimal b);
     subtract(BigDecimal b);
     multiply(BigDecimal b);
     divide(BigDecimal b,int scale,RoundingMode more);
        scale:小数点后几位
         more:小数部分的舍入模式(BigDecimal.ROUND_HALF_UP:四舍五入)
     示例:
       double d = 1.0;
      double d2 = 2.9;
       BigDecimal a = new BigDecimal(Double.toString(d));
      BigDecimal a2 = new BigDecimal(Double.toString(d2));
      a.multiply(a2).doubleValue();//返回一个double值

------------------------------------------------------------------

访问修饰符 -- 范围
public    :所有地方
protected :当前类,同包内,不同包的字类
default   :当期类,同包内
private   :当前类

------------------------------------------------------------------------
1.基本数据类型

数值型          
      整形   :  byte(字节型)  short(短整型)  int(整型)  long(长整形)
                   1            2             4          8    占字节
                                                              大小
                   8            16            32         64   占内存
                                         
      字符型 :  char 占2个字节
      浮点型 :  float(单精度)    double(双精度)
                  8                 16    占字节

boolean型
      布尔型 :  boolean   true  false(默认值)

-----------------------------------------------------------------------
byte(字节型)的取值范围: -2的7次方到2的7次方减一   (-128...127)
short(短整型)的取值范围:-2的15次方到2的15次方减一 (-32768...32767)
int(整型)的取值范围:    -2的31次方到2的31次方减一 (-2147483648...2147483647)
long(长整形)的取值范围: -2的63次方到2的63次方减一 (-9223372036854775808L...9223372036854775807L)

byte a = 'a'; //键盘上的每一个按键都对应一个数字,a=97
byte b = 1; //代表一个数字,b=1
short c = 0;
long a = 234234L

char a = 'a';//97
char b = 'b';//98
System.out.println(a + b);//195

-------------------------------------------------------
2.引用数据类型
  String,数组,自定义类,枚举

String a = "aswSFeaarwerwe234";
        a.charAt(3); //查找该字符串中下标为3的字符
        a.codePointAt(0);//查找该字符串中下标0的键盘码
        a.concat("a");//追加字符串
        a.contains("h");//判断该字符串中是否有h字符
        a.toUpperCase();//将该字符串变成大写

------------------------------------------------------------------------
java多线程
当运行一个java程序时,可以同时执行多个指令流,每一个指令流就是一个线程,每一个线程独立的完成一项操作功能,多个线程组成一个进程,多个线程共享同一块存储空间,可以实现数据间共享,线程通信简单,比较快捷

------------------------------------------------------------------------
堆栈
栈:保存基本数据类型和对象的引用,空间小,速度快,后进先出原则存储
堆:保存对象,空间大,速度慢,存储没有顺序

------------------------------------------------------------------------
//判断属于那种数据类型----------------
Map map = new HashMap();
map.put(0, 1);
map.get(0).getClass().getSimpleName();

//时间格式类型--------------------
Date date = new Date();
SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(s.format(date)); //2010-08-29 01:46:48

//截取字符串--------------------
String a = "a,b,c,d";
String[] b = a.split(",");
System.out.println(b[0] + b[1] + b[2] + b[3]);
for (String string : b)
{
    System.out.println(string);
}


//集合追加字符串--------------------
List list = new ArrayList();
        list.add("a");
        list.add("b");
        list.add("c");
        list.add("r");
        list.add("f");
        list.add("j");
       
        String a = "";
        for (int i = 0; i < list.size(); i++)
        {
            String b = (String)list.get(i);
            a = a + b;
        }
        System.out.println(a);

//
String operator = "+-*/%";
        String b = "/";
        int aa = operator.indexOf(b);
        System.out.println(aa); //aa=3

//集合排序--------------------
List a = new ArrayList();
        a.add("bsd");
        a.add("aaa");
        Collections.sort(a);
        for (Object aa : a)
        {
            System.out.println(aa);
        }
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

Global site tag (gtag.js) - Google Analytics