黑马程序员技术交流社区

标题: 学习笔记---基本数据类型对象包装类个人总结代码演示 [打印本页]

作者: limxing    时间: 2015-1-23 23:14
标题: 学习笔记---基本数据类型对象包装类个人总结代码演示
  1. /*
  2.         *基本数据类型对象包装类,
  3.         *常见作用:用于基本数据类型和字符串类型之间转换
  4.         *主要是Integer类的Demo
  5.         *其他基本类型与其大同小异
  6. */
  7. class  MyInteger
  8. {
  9.         public static void main(String[] args)
  10.         {
  11.         //基本类型转换成字符串
  12.                 sop(Integer.toString(123));
  13.                 sop(Float.toString(123));
  14.                 sop(Double.toString(123));
  15.                 sop(Character.toString('a'));

  16.         //字符串转换成基本数据类型
  17.                 String s="35";
  18.                 sop(Byte.parseByte(s));
  19.                 sop(Short.parseShort(s));
  20.                 sop(Integer.parseInt(s));//把字符串转换成int类型
  21.                 sop(Long.parseLong(s));
  22.                 sop(Float.parseFloat(s));
  23.                 sop(Double.parseDouble(s));
  24.                 //sop(Character.parseCharacter('a'));无此方法
  25.                 sop(Boolean.parseBoolean("true"));

  26.                 Integer i=new Integer(s);//非静态,创建对象再调用数值
  27.                 sop(i.intValue());

  28.         //十进制转换成其他进制
  29.                 int shi=60;
  30.                 sop(Integer.toBinaryString(shi));//十进制转换成二进制
  31.                 sop(Integer.toOctalString(shi));//十进制转换成8进制
  32.                 sop(Integer.toHexString(shi));//十进制转换成16进制
  33.         //其他进制转换成十进制
  34.                 sop(Integer.parseInt("111100",2));//二进制转换成十进制
  35.                 sop(Integer.parseInt("3c",16));//16进制转换成十进制
  36.                 sop(Integer.parseInt("74",8));//8进制转换成十进制

  37.         //基本数据类型对象包装类(Integer)新特性1.5后,开发不常用
  38.                 Integer old=new Integer(123);
  39.                 Double newer=123.0;//自动装箱

  40.                 old=old+2;
  41.                 newer=newer+2.0;//自动拆箱变成int型与2进行运算,在自动装箱给newer。
  42.                               //自动拆箱方法  newer=newer.intValue()+2;

  43.                 sop(old);
  44.                 sop(newer);


  45.                 Integer m=128;
  46.                 Integer n=128;
  47.                 sop(m==n);//结果为false,m和n指向了不同的对象
  48.                 sop(m.equals(n));//结果为true,因为equals对比的是两个数值
  49.                 Integer a=127;
  50.                 Integer b=127;
  51.                 sop(a==b);//结果为true,因为a和b指向了同一个对象
  52.                 //因为当数值在byte范围内127~-128时,如果该数值已经存在,则不会另开辟空间。

  53.                 String str1="abcdefgddddddddddddddddddd";
  54.                 String str2="abcdefgddddddddddddddddddd";
  55.                 sop("String="+(str1==str2));//String类没有范围限制,只要数值相同则就表示可以指向同一对象

  56.                 Double dou1=1.0;
  57.                 Double dou2=1.0;
  58.                 sop("Double="+(dou1==dou2));//无论大小都是false

  59.                 Float f1=1.0f;
  60.                 Float f2=1.0f;
  61.                 sop(f1==f2);//无论大小都是false

  62.                 Byte b1=-127;
  63.                 Byte b2=-127;
  64.                 sop(b1==b2);//在不越界的情况下即(127~-128),结果为true

  65.                 Short s1=127;
  66.                 Short s2=127;
  67.                 sop(s1==s2);//与Integer相同。在Byte范围内为true


  68.         }

  69.         public static void sop(Object obj)
  70.         {
  71.                 System.out.println(obj);
  72.         }
  73. }
复制代码
如有不足或错误敬请指出。

作者: 以利亚    时间: 2015-1-24 09:37
感谢分享,总结的很不错




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2