首页 > 代码库 > 第二十二节(String,StringBuffer,基础类型对应的 8 个包装类,日期相关类、 Random 数字 ,Enum枚举)上

第二十二节(String,StringBuffer,基础类型对应的 8 个包装类,日期相关类、 Random 数字 ,Enum枚举)上

/*    获取当前的毫秒数        1S = 1000毫秒*/public class DateTest01{        public static void main(String[] args){                long now = System.currentTimeMillis();                System.out.println(now); // 1418662206661            }}///////////////////////////////////////////////////////////////////////////*    获取系统当前时间*/import java.util.Date;import java.text.SimpleDateFormat;public class DateTest02{        public static void main(String[] args){                // 获取系统当前时间        Date Date = new Date();        System.out.println(Date); // Tue Dec 16 00:52:48 CST 2014                // 引入”格式化“日期        // java.util.Date; -> String                /*            日期格式:                y 年                m 月                d 日                H 小时                m 分                s 秒                S 毫秒        */                // 创建格式化对象        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM月dd日 HH:mm:ss SSS");                String strTime = sdf.format(Date);                System.out.println("系统当前时间是:"+strTime);            }}//////////////////////////////////////////////////////////////////////*    日历    */import java.util.Date;import java.util.Calendar;import java.text.SimpleDateFormat;public class DateTest03{        public static void main(String[] args) throws Exception{                // 获取系统当前日历        Calendar c = Calendar.getInstance();        // 查看当前日历的”星期几“        int i = c.get(Calendar.DAY_OF_WEEK);                        System.out.println("今天是本周中的第:"+i+""); // 3(中国星期日,外国人看作是第1天)        System.out.println("今天是本月中的第:"+c.get(Calendar.DAY_OF_MONTH) +"");                // 获取2013 11 11 是星期几        String t = "2013,11,11";        Date d = new SimpleDateFormat("yyyy,MM,dd").parse(t);                c.setTime(d);                // 获取星期几        System.out.println("2013,11,11 本周中的第:"+c.get(Calendar.DAY_OF_WEEK)+"");            }}
/*    java中的八种基本数据类型,对应的包装类        基本数据类型                  包装类型    byte                            java.lang.Byte    short                            java.lang.short    int                            java.lang.Integer    long                            java.lang.Long        float                            java.lang.Float    double                        java.lang.Double        boolean                        java.lang.Boolean        char                            java.lang.Character    */public class IntegerTest01{    // 规定a1方法,可接收java中的任何一种数据类型    public static void a1(Object o){        System.out.println(o);        }        public static void main(String[] args){                // 基本数据类型        byte b = 10;                //引用类型        Byte a = new Byte(b);                a1(a); // 10 Byte已经将Object中的toString方法重写了                    }    }
///////////////////////////////////////////////////////////////
/* java.lang.Integer 讲八种类型*/public class IntegerTest02{ public static void main(String[] args){ // 获取int类型的最小值,最大值 System.out.println("int类型的最小值:"+Integer.MIN_VALUE ); System.out.println("int类型的最大值:"+Integer.MAX_VALUE ); System.out.println("byte类型的最小值:"+Byte.MIN_VALUE ); System.out.println("byte类型的最大值:"+Byte.MAX_VALUE ); // 创建Integer类型的对象 Integer i1 = new Integer(10); // int -> Integer Integer i2 = new Integer("123"); // String -> Integer System.out.println(i1); System.out.println(i2); } }////////////////////////////////////////////////////////////////////////* Integer中的常用方法*/public class IntegerTest03{ public static void main(String[] args){ // int - > Integer // 基本数据类型 -> 引用数据类型 Integer i1 = new Integer(10); // Integer -> int int i2 = i1.intValue(); System.out.println(i2 + 100); // String -> int int age = Integer.parseInt("18"); System.out.println(age + 20); // 将int类型的十进制转换成2进制 String s1 = Integer.toBinaryString(6); System.out.println("10的二进制为:" + s1); // 将int类型的十进制转换成16进制 String s2 = Integer.toHexString(6); System.out.println("6的十六进制为:" + s2); // 将int类型的十进制转换成8进制 String s3 = Integer.toOctalString(6); System.out.println("6的八进制为:" + s3); // int -> Integer Integer i3 = Integer.valueOf(10); // String -> Integer Integer i4 = Integer.valueOf("10"); System.out.println(i3); System.out.println(i4); // int -> Integer 装箱 Integer a = new Integer(10); // Integer -> int 拆箱 int b = a.intValue(); Integer i5 = 10; // 自动装箱 int i6 = i5; // 自动拆箱 } }
/*    生成随机数*/import java.util.Random;public class RandomTest01{        public static void main(String[] args){                Random r = new Random();        // 生成int类型的随机数        int k = r.nextInt(101); // [0-100]之间的随机数        System.out.println(k);                for(int i = 0; i < 5; i++){            System.out.println(r.nextInt(101));            }                        // 作业:生成5个不重复的随机数[1 - 5]        // 自己编写枚举的小例子        // 数字格式化    }}
/*    java.lang.StringBuffer    java.lang.StringBuilder    1. StringBuffer 和 StringBuilder        是一个字符串的缓冲区        2. 工作原理        预先在内存中申请一块空间,以容纳字符序列        如果预留的空间不够用,则进行自动扩容,以容纳更多的字符序列            3. StringBuffer,StringBuilder 和 String 最大的区别            String 是不可变的字符序列,存储字符串常量池中        StringBuffer底层是一个char数组,但是该char数组是可变的。 并且可以自动扩容                用法同 StringBuffer, StringBuilder 和 StringBuffer 的区别是 StringBuffer         中所有的方法都是同步的,是线程安全的,但速度慢,StringBuilder 的速度快,        但不是线程安全            4. StringBuffer 和 StringBuilder 默认的初始化容量是 16            5. StringBuffer 和 StringBuilder区别            StringBuffer是线程安全的(在多线程环境下不会出现问题)        StringBuilder 非线程安全(在多线程环境下可能会出现问题)*/public class StringBufferTest01{        public static void main(String[] args){                // 创建字符串缓冲区对象        StringBuffer buffer = new StringBuffer(); // 16                String[] s = {"吃饭","睡觉","打豆豆"};                for(int i = 0; i < s.length; i++){            if(i == s.length - 1){                buffer.append(s[i]);            }    else {                buffer.append(s[i]);                buffer.append(",");                }                    }                System.out.println("buffer: " + buffer);                    }    }

 

第二十二节(String,StringBuffer,基础类型对应的 8 个包装类,日期相关类、 Random 数字 ,Enum枚举)上