zoukankan      html  css  js  c++  java
  • 类(重要的很)

    package cn.zzsxt.demo;

    import java.util.ArrayList;
    import java.util.List;

    /**
    * 基本数据类型:栈
    * byte, short,int,long,float,double,char,boolean
    * 包装类型: 都处在java.lang包(不需要导包)
    * Byte, Short,Integer,Long,Float,Double,Character,Boolean
    *
    * Integer中常用的方法:
    * parseInt(String x):将字符串转为int类型
    *
    * 数值类型常用的方法:Xxx:具体的数据类型
    * parseXxx(String x):将字符串x转换为指定的数组类型Xxx
    * parseInt,parseLong,parseFlot,parseDouble...
    * 1.什么是包装类型:堆(在内存中的消耗比较大)
    * 包装类是将基本类型封装到一个类中,然后提供常用的属性和方法
    *
    * 2.为什么要用包装类型?
    * a.在程序处理过程有些时候需要使用对象类型
    * b.包装类型(类):其中提供一些属性和方法,方便操作
    *JDK1.5之后Java支持自动装箱和拆箱
    * 装箱:将基本数据类型转化为包装类型:调用构造函数 或调用静态valueOf方法
    * a.Integer num = new Integer(10);
    * b.Integer num = Integer.valueOf(10);
    * 拆箱:将包装类型转为基本数据类型:对象名.xxValue():
    * Integer a = Integer.valueOf(10);
    * int b = Integer.intValue(a);
    */
    public class WrapperDemo {
    public static void main(String[] args) {
    // List list = new ArrayList();
    // list.add(new Integer(1));//将基本数据类型转换为对象类型
    // list.add(new Double(3.14));
    // Integer num = new Integer(10);
    Integer num = Integer.valueOf(10);
    int num2 = num.intValue();//将包装类型转换为基本数据类型
    System.out.println("Integer-->max_value="+Integer.MAX_VALUE);
    System.out.println("Integer-->min_value="+Integer.MIN_VALUE);
    System.out.println("Integer-->SIZE="+Integer.SIZE);
    System.out.println(Integer.toBinaryString(10));//将指定的数值转化为2进制
    System.out.println(Integer.toHexString(10));//将指定的数值转化为16进制
    System.out.println(Integer.toOctalString(10));//将指定的数值转化为8进制
    String str="12";
    String str2="34";
    // System.out.println(str+str2);//字符拼接
    int a = Integer.parseInt(str);//将字符串转换为int类型
    int b = Integer.parseInt(str2);
    System.out.println(a+b);
    //JDK1.5支持自动装箱(基本类型--->包装类型)和拆箱(包装类型--->基本类型)操作
    Double d=3.14;//自动装箱
    double d2=d;//自动拆箱
    }
    }


    *==与equals的区别:
    *==比较对象的话比较是的地址的引用是否相等
    *equals:比较是对象的内容是否相等
    *Integer num3=123;//自动装箱
    *==>Integer num3=Integer.valueOf(123);


    * java.lang.String
    * 常用的构造函数:
    * String()
    String(char[] value) : String str = new String({'j','a','v','a'});
    String(String original):String str = new String("java");
    * 字符串中常用的方法:
    * 1.length():获取字符串的长度" 获取字符串长度的方法:"+str.length()
    * 2.toUpperCase():将字符串转换成大写
    * 3.toLowerCase():将字符串转换成小写
    * 4.indexOf():获取指定字符串在字符串中出现的下标位置(第一个字符的位置),如果不存在返回-1
    * 5.lastIndexOf("z"):获取指定字符串最后一个字符的位置 ,如果不存在返回-1
    * 6.charAt():获取指定下标的字符(下标从0开始) str.charAt(3)
    * 7.substring(begin, end):字符串截取包含起始位置,不包含结束位置
    * 8.substring(begin):字符串截取,从指定的起始位置截取到最后
    * 9.contains():判断是否包含指定字符串,包含返回true,否则返回false
    * 10.equals():比较两个字符串内容是否相等
    * 11.equalsIgnoreCase():忽略大小写比较两个字符串内容是否相等
    * 12.startsWith():是否以指定字符串开头
    * 13.endsWith():是否以指定字符串结尾:
    */


    * String:不可变的字符串
    * StringBuffer:线程安全的可变字符序列(synchronized) 多线程(安全性)
    * StringBuilder:一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步(加锁) 单线程(快)
    * 交通信号灯:
    * 同步(存在红绿灯)
    * 不同步(没有红绿灯)
    * 构造函数:
    * StringBuffer():
    * StringBuffer(String str):
    * 常用方法:
    * sb.append(str):将指定str字符串追加到sb后边
    * charAt(int index) : 返回此序列中指定索引处的 char 值。
    * indexOf(String str):返回第一次出现的指定子字符串在该字符串中的索引。
    * lastIndexOf(String str):返回最右边出现的指定子字符串在此字符串中的索引。
    * replace(int start, int end, String str):使用给定 String 中的字符替换此序列的子字符串中的字符。
    * 包含start位置,但不包含end位置-->[start,end)
    * reverse():反转


    //过时的方法:在方法上有一个删除线
    //过时的方法:getXxx():获取日期中指定的xx部分
    int year = date.getYear();
    // System.out.println(year);//距1900年的总年数
    // int month = date.getMonth();//0~11之间,0代表1月
    // System.out.println(month);//


    System.out.println(sec);
    //测试此日期是否在指定日期之前
    System.out.println(date.before(date2));
    //测试此日期是否在指定日期之后
    System.out.println(date.after(date2));

    Calendar calendar = Calendar.getInstance();//创建实例
    // System.out.println(calendar.toString());
    //获取日期的指定部分:get(int field)返回给定日历字段的值
    int year = calendar.get(Calendar.YEAR);
    int month = calendar.get(Calendar.MONTH);//0~11
    int date = calendar.get(Calendar.DATE);
    int hour = calendar.get(Calendar.HOUR);
    int min = calendar.get(Calendar.MINUTE);
    int sec = calendar.get(Calendar.SECOND);
    System.out.println(year+"-"+(month+1)+"-"+date+" "+hour+":"+min+":"+sec);
    //获取当前日期是一年中的第多少天
    int dayOfYear = calendar.get(Calendar.DAY_OF_YEAR);//一年的第N天
    int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);//一月的第N天
    //查看今天是星期几?
    int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);//一周的第N天(周日为第1天)
    System.out.println(dayOfYear+"-----"+dayOfMonth+"----"+dayOfWeek);
    //查看当月1号是一星期的第几天?
    //1.查看2016-4-17是一星期的第几天?
    calendar.set(Calendar.YEAR, 2016);
    calendar.set(Calendar.MONTH, 3);//0~11
    calendar.set(Calendar.DATE, 17);
    // System.out.println(calendar);
    int oldDayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
    System.out.println("2016-4-17是一星期的第"+oldDayOfWeek+"天");
    //查看当前日期所在月份是1号是一周的第几天?
    Calendar calendar2 = Calendar.getInstance();
    calendar2.set(Calendar.DATE, 1);//2017-4-1
    int dayOfWeek2 = calendar2.get(Calendar.DAY_OF_WEEK);
    System.out.println(dayOfWeek2);


    *java.util.Date: 类 Date 表示特定的日期和时间,精确到毫秒。
    * 三个子类
    * java.sql.Date
    * java.sql.Time
    * java.sql.Timestamp
    * 常用构造函数:
    * Date():获取当前日期
    * Date(int year,int month,int date): 获取指定日期
    * year - 减 1900 的年份。
    month - 0-11 的月份。
    date - 一月中 1-31 之间的某一天
    常用的方法:
    getYear():减 1900 的年份
    getMonth():获取月份,范围0~11
    getDate():获取日期
    getHours():获取当前日期的小时数
    getMinutes():获取当前日期的分钟数
    getSeconds():获取当前日期的秒数:
    toLocaleString():以与实现相关的方式创建此 Date 对象的字符串表示形式
    before(Date when):测试此日期是否在指定日期之前。
    after(Date when): 测试此日期是否在指定日期之后。
    .....
    格式化输入日期:DateFormat和SimpleDateFormat
    java.text.DateFormat:抽象类
    java.text.SimpleDateFormat:DateFormat的子类
    常用的构造函数:
    SimpleDateFormat(String pattern)
    pattern:
    yyyy:年份 MM:月分 dd:日期 HH:小时(24进制) hh(12进制):小时 mm:分钟 ss:秒
    常用方法:
    format(Date d):将指定的日期格式化字符串
    parse(String s):将字符串转换(解析)为日期,会一个检查异常ParseException需要捕获


    package cn.zzsxt2;

    import java.util.Date;
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Scanner;

    public class TestVisualCalendar {
    public static void main(String[] args) {
    System.out.println("请输入日期(2017-1-1)");
    Scanner sc = new Scanner(System.in);
    String dateStr=sc.nextLine();
    //将日期字符串转为日期
    DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    try {
    Date date = (Date) dateFormat.parse(dateStr);
    Calendar calendar =Calendar.getInstance();//获取Calendar对象(实例)
    calendar.setTime(date);//将输入的日期转为Calendar对象
    //获取当前日期部分
    int day = calendar.get(Calendar.DATE);
    //将当前日期设置成当月月份的第一天
    calendar.set(Calendar.DATE,1);
    //判断输入日期的月份的第一天是星期几
    int dayOfWeek=calendar.get(Calendar.DAY_OF_WEEK);
    //获取当前月份的最大天数
    int maxDays =calendar.getActualMaximum(Calendar.DATE);
    //打印日历头信息
    System.out.println("日 一 二 三 四 五 六");
    //打印1日之前的空格(关键知道1号是星期几)
    for (int i = 1; i <dayOfWeek; i++) {
    System.out.print(' ');
    }
    for (int i = 1; i < maxDays; i++) {

    if(day==i-1){

    System.out.print("*");

    }

    System.out.print(i+" ");
    int w=calendar.get(Calendar.DAY_OF_WEEK);
    if(w==Calendar.SATURDAY){
    System.out.println();//当前日期如果是周六的话需要换行
    }
    calendar.add(Calendar.DATE,1);
    }
    } catch (ParseException e) {

    e.printStackTrace();
    }


    }
    }

  • 相关阅读:
    RobotFrameWork(一)robotfamework(python版)及Ride在windows安装
    Sql日期时间格式转换[zhuan]
    SQL query
    WPF窗体视图中绑定Resources文件中字符串时,抛出:System.Windows.Markup.StaticExtension
    Power Map 更新日志
    球面墨卡托(Spherical Mercator)
    TPL(Task Parallel Library)多线程、并发功能
    WPF:保存窗口当前状态截图方法
    dynamic关键字
    Error: Cannot Determine the location of the VS common tools folder
  • 原文地址:https://www.cnblogs.com/seePoppy/p/6745280.html
Copyright © 2011-2022 走看看