JAVA基础知识点梳理精简_第1页
JAVA基础知识点梳理精简_第2页
JAVA基础知识点梳理精简_第3页
JAVA基础知识点梳理精简_第4页
JAVA基础知识点梳理精简_第5页
已阅读5页,还剩38页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/JAVA基础知识点梳理(重点笔记)标识符规则可以由字母、数字、下划线、美元符$组成,不能以数字开头不能是java的关键字和保留字严格区分大小写,且尽量见名知意变量publicclasstest{ publicstaticvoidmain(String[]args){ Stringlove="imooc"; System.out.println("变量love的内容是:"+love); love="iloveimooc"; System.out.println("重新赋值后变量love的内容是"+love); }}变量命名习惯:第一个单词的首字母小写,其后单词的首字母大写(骆驼式),myAge变量命名时,尽量简短且能清楚的表达变量的作用,见名知意,如stuNamePs:java变量长度没有限制,但是严格区分大小写数据类型int:4个字节 Double:8个字节Float:4个字节 float变量赋值在数值后添加字母ffloathe=12.2f;Char:2个字节 char变量赋值使用单引号’’Boolean:1个字节 取值只能为:true和falseString:引用数据类型Java常量的应用:Final数据类型常量名=值;常量名一般使用大写字符逻辑运算符:^:异或有且只有一个为true则返回true条件运算符:()?正确表达式:错误表达式Eg:Stringstr=(8>5)?“yes”:“no”运算符优先级最高的是:()输出换行:System.out.println();//循环语句练习packagettt;publicclasstest6{ publicstaticvoidmain(String[]args){ inti=1; intsum1=0; for(;i<101;i++){ if((i%3)!=0){ sum1+=i; } } System.out.println("100以内不可以被3整除的数之和为:"+sum1); }}System.out.println 换行System.out.print 不换行packagettt;importjava.util.Scanner;publicclasstest8{ publicstaticvoidmain(String[]args){ inti=1; System.out.println("请键入一个9位以内的数:"); Scanneraa=newScanner(System.in); intbb=aa.nextInt(); aa.close(); for(;bb>9;i++){ bb=bb/10; } System.out.println("i的值为"+i); }}数组声明数组:数组类型[]数组名;数组类型数组名[];b) 分配空间:i. 数组名=new数据类型【数组长度】Eg:socres=newint[5];合并:int[]socres=newint[5];c) int[]sorces={1,2,2,3};等价于:int[]sorces=newint[]{1,2,2,3};d) 数组名.length获取数组的长度e) arrays类操作java中的数组排序:arrays.sort(数组名)(升序)将数组转换为字符串:arrays.toString(数组名);(可以实现把多个数组元素连接在一起,元素中间用逗号和空格隔开)。f) foreach形式的for语句使用:for(inti:words){ System.out.print(i); }java中无参无返方法的调用定义:publicvoidshow(){}方法名字第一个词小写,之后首字母大写调用:创建类的对象对象名.方法名();java中无参有返方法的调用Publicintshow(){returnsum;}注意:如果方法的返回类型为void,则方法中不能使用return返回值方法的返回值最多只能有一个,不能返回多个值方法返回值的类型必须兼容方法的重载:必须是在同一个类中方法名相同方法参数的个数、顺序或类型不同与方法的修饰符或返回值没有关系随机数方法:(int)(Math.random()*100)不需要导包类和对象:类是模子,确定对象将会拥有的特征(属性)和行为(方法)类是对象的模型,具有相同属性和方法的一组对象的集合对象:属性——对象具有的各种特征每个对象的每个属性都有特定值类是抽象概念,仅仅是模板,比如“手机”;对象是一个具体的实体所有的java程序都是以类class为组织单元,由属性和方法组成Java对象使用步骤:类名对象名=new类名();Phonephone=newPhone();引用属性:phone.screen=5;//给screen属性赋值5引用方法:phone.send();//调用send()方法成员变量和局部变量的区别作用域不同初始值不同在同一个方法中,不允许有同名局部变量两类变量同名时,局部变量具有更高的优先级构造方法:使用new+构造方法创建一个新的对象构造方法是定义在java类中的一个用来初始化对象的方法构造方法与类同名且没有返回值构造方法的格式:public构造方法名(){//初始化代码}Phonephone=newPhone();构造方法的名字与类名相同当没有指定构造方法是,系统会自动添加无参的构造方法当有指定构造方法,无论是有参、无参的构造方法,都不会自动添加无参的构造方法构造方法的重载:方法名相同,但参数不同的多个方法,系统自动选择静态变量static:Static可以修饰变量、方法、代码块访问(引用):类名.变量名hello.haha定义:publicstaticStringhaha=”imoc”;Public:表示公开的、公有的静态方法:访问:类名.方法名();静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员。如果调用非静态成员,可以通过对象来访问在普通的方法中可以直接访问同类的非静态变量和静态变量静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法。程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。面向对象的三大特性:封装、继承、多态封装:概念:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问好处:只能通过规定的方法访问数据;隐藏类的实例细节,方便修改和实现实现步骤:修改属性的可见性:设为private:privateinta;创建getter/setter方法:用于属性的读写在getter、setter方法中加入属性的控制语句:对属性的合法性进行判断(其实就是通过调用方法去读写属性)可以通过eclipse中source菜单中selectgettersandsetterstocreatejava中的包:作用:管理java文件;解决同名文件冲突定义包:package包名必须放在java源程序的第一行包名间可以使用“.”隔开Eg:com.imooc.myclass‘;c) 系统包:Java.lang.(类):包含java语言基础的类Java.util.(类):包含java语言中各种工具类Java.io.(类):只包含输入、输出相关功能的表d) 包的使用:I. 可以通过import关键字,在某个文件使用其他文件中的类。Importcom.imooc.music.myclassIi. Java中,包的命名规范是全小写字母拼音Iii.使用的时候不但可以加载某个包下的所有文件,也可以加载某个具体子包下的所有文件访问修饰符的总结访问修饰符本类同包子类其他private√默认√√protected√√√public√√√√this关键字:代表当前对象This.属性操作当前对象的属性This.方法调用当前对象的方法b) 封装对象的属性的时候经常会使用this关键字java中的内部类:(包含内部类的类称为外部类)内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类内部类的方法可以直接访问外部类的所有数据,包括隐私的数据内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便内部类可以分为:成员内部类内部类中定义的方法可以直接访问外部类中的数据,不受访问控制符的影响定义一个内部类对象: 内部类对象名=外部类对象.new内部类()外部类不能直接使用内部类的成员和方法,可以先创建内部类的对象,然后通过内部类的对象来访问其他成员变量和方法外部类和内部类具有相同的成员变量或方法,则内部类默认访问自己的成员变量或方法,如果要访问外部类的成员变量,可以使用this关键字静态内部类静态内部类不能直接访问外部类的非静态成员,但可以通过new外部类().成员的方式访问如果外部类的静态成员与内部类的成员名称相同,可以通过“类名.静态成员”访问外部类的静态成员;如果外部类的静态成员与内部类的成员名称不同,则可以通过“成员名”直接调用外部类的静态成员创建静态内部类的对象时,不需要外部类的对象,可以直接创建内部类对象名=new内部类();方法内部类方法内部类就是定义在外部类的方法中,方法内部类只在该方法的内部可见,即只在该方法内可以使用。由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符和static修饰符匿名内部类继承:Java里都是单继承好处:子类直接拥有父类的所有属性和方法,但private除外实现代码的复用Class子类extends父类Final关键字修饰类:则该类不允许被继承修饰方法:则该方法不允许被覆盖(重写)修饰属性:则该类的属性不会进行隐式的初始化(类的初始化属性必须有值)或在构造方法中赋值修饰变量,则变量的值只能赋一次,即常量Super关键字在对象的内部使用,可以代表父类对象方位父类的属性,或方法,super.agesuper.eat()Object类:Object类是所有类的父类,如果一个类没有使用extends关键字明确标识继承另一个类,那么这个类默认继承object类Object类中的方法,适合所有子类方法:toString()方法:在object类里面定义的tostring()方法的时候返回的对象的哈希码(对象地址字符串)(用来区分对象)如:直接输出dog对象的值:System.out.println(dog);生成:source菜单栏——>generatetoString()——>生成输出属性的方法Equals()方法:比较的是对象的引用是否指向同一块内存地址:Dogdog=newDog();生成:source菜单栏——>generatehashcode()andequals()...类对象:姓名、年龄、身高...obj.getclass()类的对象:小灰、25、170...obj调用:if(dog1.equals(dog2))——>判断两个对象是否相同多态:(继承是多态的基础)引用多态:父类的引用可以指向本类的对象:animalsobj1=newanimals();父类的引用可以指向子类的对象:animalsobj2=newdog();注意:子类的引用不可以指向父类的对象:dogobj3=newanimals();方法多态:创建本类对象时,调用的方法为本类方法创建子类对象时,调用的方法为子类重写的方法或者继承的方法多态中的引用类型转换向上类型转换(隐式/自动类型转换),是小类型到大类型的转换,无风险向下类型转行(强制类型转换),是大类型到小类型的转换,有风险,溢出Instanceof运算符,来解决引用对象时的类型,避免类型转换的安全问题Eg:Dogdog=newDog();Animalanmal=dog;//自动类型提升,向上类型转换Dogdog2=(Dog)animal;//强制类型转换,向下类型转换Catcat=(Cat)animal;//编译时Cat类型;运行时Dog类型,报错可以替换为:if(animalinstanceofCat){Catcat=(Cat)animal;}抽象类:语法:抽象类前使用abstract关键字修饰,则该类为抽象类作用:限制规定子类必须实现某些方法,但不关注实现细节规则:Abstract定义抽象类Abstract定义抽象方法,只有声明,不需要实现包含抽象方法的类是抽象类抽象类中可以包含普通的方法,也可以没有抽象方法抽象类不能直接创建,可以定义引用变量d) 现有Shape图形类,用Rectangle矩形和Circle圆形子类,求图形的周长和面积:Shape.java:packagecom.amooc;publicabstractclassShape{ publicabstractvoidzhouchang(doublel,doublew); publicabstractvoidmianji(doublel,doublew); publicabstractvoidzhouchang2(doubler); publicabstractvoidmianji2(doubler);}Rectangle.java:packagecom.amooc;publicclassRectangleextendsShape{ publicvoidzhouchang(doublel,doublew){ doublez; z=2*(l+w); System.out.println("长为:"+l+",宽为:"+w+",的长方形周长是:"+z); } publicvoidmianji(doublel,doublew){ doublem; m=l*w; System.out.println("长为:"+l+",宽为:"+w+",的长方形面积是:"+m); } publicvoidzhouchang2(doubler){ doublez; z=2*3.14*r; System.out.println("半径为:"+r+",的圆形周长是:"+z); } publicvoidmianji2(doubler){ doublem; m=3.14*r*r; System.out.println("半径为:"+r+",的圆形面积是:"+m); }}imooc1.java:packagecom.amooc;publicclassimooc1{ publicstaticvoidmain(String[]args){ Rectanglez1=newRectangle(); Shapem1=newRectangle(); Shapez2=newRectangle(); Shapem2=newRectangle(); z1.zhouchang(3,4); m1.mianji(3,4); z2.zhouchang2(3); m2.mianji2(3); }}35、接口:概念:接口可以理解为一种特殊的类,由全局常量和公共的抽象方法所组成。类是一种实现体,而接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部数据,也不关心这些类里方法的实现细节,它只规定这些类里必须提供某些方法定义:和类定义不同,定义接口不再使用class关键字,而是使用interface关键字基本语法:[修饰符]interface接口名[extends父接口1,父接口2...]{零个到多个常量定义零个到多个抽象方法的定义}接口是用来被继承、被实现的,修饰符一般建议用public注:不能使用private和protected修饰接口接口定义常量:接口中的属性是常量,即使定义时不添加publicstaticfinal修饰符,系统也会自动加上接口定义方法:接口中的方法只能是抽象方法,总是使用,即使定义时不添加publicabstract,系统也会自动加上使用接口1:一个类可以实现一个或多个接口,实现接口使用implements关键字,java中一个类只能继承一个父类是不够灵活的,通过实现多个接口可以做补充继承父类实现接口的语法为:[修饰符]class类名extends父类implements接口1,接口2...{类体部分//如果继承了抽象类,需要实现继承的抽象方法;要实现接口中的抽象方法...}如果要继承父类,继承父类必须在实现接口之前Eg:newinterfaceIjiekou(命名习惯,名字前加大写I)使用接口2:接口在使用过程当中,还经常与匿名内部类配合使用,匿名内部类就是没有名字的内部类,多用于关注实现而不关注实现类的名称语法格式:Interfacei=newInterface(){publicvoidmethod(){System.out.println(“匿名内部类实现接口的方式”);}};注意:末尾以分号结束或:newInterface(){PublicvoidplayGame(){System.out.println(“使用匿名内部类的方式实现接口”);}}.playGame();在接口中定义方法geta(),正确的格式是:voidgeta();注:接口方法不能有方法体,同时方法的访问修饰符不能为private和protectedUML:(unifiedmodelinglanguage),又称统一建模语言或标准建模语言。是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持。用例图:(theusecasediagram)用例图能够以可视化的方式,表达系统如何满足所收集的业务规则,以与特定的用户需求等信息序列图:(thesequencediagram)序列图用于按照交互发生的一系列顺序,显示对象之间的这些交互类图:(theclassdiagram)UML类图业务逻辑和所有支持结构一同被用于定义全部的代码结构UML建模工具:Visio、rationalrose、powerdesign综合练习:答答租车系统功能:展示所有可租车辆选择车型、租车量展示租车清单,包含:总金额、总载货量与其车型、总载人量与其车型项目分析:数据模型分析通过对现实世界的事与物主要特征的分析、抽象,为信息系统的实施提供数据存取的数据结构以与相应的约束数据结构的组成:操作(方法)、属性业务模型分析显示和流程分析异常:走路被树叶绊倒,吃糖饼烫后脑勺,考试快交卷了才发现反面还有题...组织图:处理异常:try-catch以与try-catch-finallyEg:Try{//一些会抛出异常的方法}catch(Exceptione){//处理该异常的代码块}finally{//最终将要执行的代码}iii.packagecom.imooc0325;publicclasstest1{ /* divide:除数 result:结果 try-catch捕获while循环 每次循环,divide减1,result=result+100/divide 如果:捕获异常,打印输出"抛出异常了!!!",返回-1 否则:返回result */ publicinttest(){ intdivide=10; intresult=100; try{ while(divide>-1){ divide--; result=result+100/divide; } returnresult; }catch(Exceptione){ e.printStackTrace();//打印异常具体信息 System.out.println("循环抛出异常了!!!"); return-1; }finally{ System.out.println("我还会回来的~~"); } } publicstaticvoidmain(String[]args){ test1tct=newtest1(); intresult=tct.test(); System.out.println("test方法执行完毕,返回值:"+result); }}如果三个程序块之内都没有return语句,则调用程序块外的return语句Java中的异常抛出以与自定义异常Java中的异常抛出:throw:将产生的异常抛出throws:声明将要抛出何种类型的异常(声明)publicvoid方法名(参数列表)throws异常列表{//调用会抛出异常的方法或者:thrownewException();}自定义异常:class自定义异常extends异常类型{}PublicclassDrunkExceptionextendsException{PublicDrunkException(Stringmessage){}}JAVA中的异常链:/* test1():抛出“喝大了”异常 test2():调用test1(),捕获“喝大了”异常,并且包装成运行时异常,继续抛出 main方法中,调用test2(),尝试捕获test2()方法抛出的异常*/publicvoidtest1()throwsDrunkException{ throwsnewDrunkException("喝车别开酒");}publicvoidtest2(){ try{ tset1(); }catch(DrunkExceptione){ RuntimeExceptionnewExe=newRuntimeException("司机一滴酒,亲人两行泪~~"); newExe.initCause(e); thrownewExe; }}publicstaticvoidmain(String[]args){ chaintestct=newchaintest(); try{ ct.tset2(); }catch(Exceptione;) e.printStackTrace(); }}注:捕获到的异常,可以在当前方法的catch块中处理,也可以抛出给调用者去处理实用中的经验与总结:处理运行时异常时,采用逻辑去合理规避,同时辅助try-catch处理在多重catch块后面,可以加一个catch(Exception)来处理可能会被遗漏的异常对于不确定的代码,也可以加上try-catch,处理潜在的异常尽量去处理异常,切忌只是简单的调用printStackTrace()去打印输出具体如何去处理异常,要根据不同的业务需求和异常类型去决定尽量添加finally语句块去释放占用的资源JAVA中的字符串:在java中,字符串被作为String类型的对象处理。String类位于java.lang包中。默认情况下,该包被自动导入所有的程序Strings1=“imooc”; //创建一个字符串对象imooc,名为s1Strings2=newString(); //创建一个空字符串对象,名为s2Strings3=newString(“imooc”); //创建一个字符串对象imooc,名为s3java中字符串的不变性:String对象创建后则不能被修改,是不可变的,所谓的修改其实时创建了新的对象,所指向的内存空间不同其实质是创建了新的字符串对象一旦一个字符串在内存中创建,则这个字符串将不可改变java中String类的常用方法String类提供了许多用来处理字符串的方法处理字符串的方法1intlength()返回当前字符串的长度2intindexOf(intch)查找ch字符子该字符串中第一次出现的位置3intindexOf(Stringstr)查找str子字符串在该字符串中第一次出现的位置4intlastIndexOf(intch)查找ch字符在该字符串中最后一次出现的位置5intlastIndexOf(Stringstr)查找str子字符串在该字符串中最后一次出现的位置6Stringsubstring(intbeginIndex)获取从beginIndex位置开始到结束的字符串7Stringsubstring(intbeginIndex,intendIndex)获取从beginIndex位置开始到endIndex位置的子字符串中8Stringtrim()返回去除了前后空格的字符串9booleanequals(Objectobj)将该字符串与指定对象比较,返回ture或false10StringtoLowerCase()将字符串转换为小写11StringtoUpperCase()将字符串转换为大写12charcharAt(intindex)获取字符串中指定位置的字符13String[]split(Stringregex,intlimit)将字符串分割为子字符串,返回字符串数组14byte[]getBytes()将该字符串转换为byte数组字符串str中字符的索引从0开始使用indexOf进行字符或字符串查找时,如果匹配返回位置索引;如果没有匹配结果,返回-1使用substring(beginIndex,endIndex)进行字符串截取时,包括beginIndex位置的字符,不包括endIndex位置的字符packagecom.imooc0325;importjava.util.Arrays;publicclasstest2{ publicstaticvoidmain(String[]args){ //定义一个字符串“学习一下java编程” Stringstr="学习一下java编程"; //打印出字符串长度 System.out.println("字符串长度:"+str.length()); //查找字符‘编’的位置 charc='编'; System.out.println("字符'编'的位置:"+str.indexOf(c)); //查找字符串'JAVA'的位置 System.out.println("子字符串'java'的位置:"+str.indexOf("java")); //查询子字符串'imooc'的位置,如果找不到返回-1 System.out.println("子字符串'imooc'的位置:"+str.indexOf("imooc")); //按空格把字符串拆分成一个数组,并输出数组元素 String[]arr=str.split(""); System.out.print("按空格拆分成数组:"+Arrays.toString(arr)); System.out.println(); //获取索引位置[4,8)之间的字符串 System.out.println("获取位置[4,8)之间的子符串:"+str.substring(4,8)); }}==和equals()的区别:==:判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象equals():比较存储在两个字符串对象中的内容是否一致//定义一个字符串“学习JAVA编程”Stringstr="学习JAVA编程";//将字符串转换为小写System.out.println("转换为小写:"+str.toLowerCase());//获取索引位置为1的字符System.out.println("获取索引为1位置的字符:"+str.charAt(1));//将字符串转换为byte[],并打印输出byte[]b=str.getBytes();System.out.print("转换为字符数组:");for(inti=0;i<b.length;i++){ System.out.print(b[i]+"");}System.out.println();//和另一个字符串“学习JAVA编程”进行比较Stringstr2=newString("学习JAVA编程");System.out.println("str和str2的内存地址相同?"+(str==str2));System.out.println("str和str2的内容相同?"+str.equals(str2));定义字符串可以使用:StringStringBuilder:性能更高,优先使用StringBuffer:是线程安全的创建一个空对象:StringBuilderstr1=newStringBuilder();创建字符串为“imooc”:StringBuilderstr2=newStringBuilder(“imooc”);//创建StringBuilder对象,存储字符串StringBuilderstr=newStringBuilder("hello");str.append("imooc");//在字符串后面追加字符串str.append(520);//在字符串后面追加整数System.out.println("字符串长度:"+str.length());//字符串长度System.out.println("插入前,"+str);str.insert(11,"!");//在指定位置插入内容Stringstr2=str.toString();//转换为String对象System.out.println("插入后:"+str2);java中的包装类:基本类型不能调用方法,功能简单。为了让基本数据类型也具备对象的特性,java为每个基本数据类型都提供了一个包装类,这样我们就可以像操作对象那样来操作基本数据类型。包装类主要提供了两大类方法:将本类型和其他基本类型进行转换的方法将字符串和本类型与包装类互相转换的方法基本类型和包装类型之间的对应关系:序号基本类型对应的包装类1byteByte2shortShort3intInteger4longLong5floatFloat6doubleDouble7charCharacter8booleanBooleanInteger包装类的构造方法:Integer(intvalue):创建一个Integer对象,表示指定的int值Integer(Strings):创建一个Integer对象,表示String参数所指示的int值inti=2;//定义int类型变量,值为2Integerm=newInteger(5);//定义Integer包装类对象,值为5Integern=newInteger(“8”);//定义Integer包装类对象,值为8e) Integer包装类的常用方法:返回值方法名解释bytebyteValue()将该Integer转为byte类型doubledoubleValue()转为double类型floatfloatValue()转为float类型intintValue()转为int类型longlongValue()转为long类型staticintparseInt(Strings)将字符串转换为int类型StringtoString()转为字符串类型staticIntegervalueOf(Strings)将字符串转换为Integer类型java中基本类型和包装类之间的转换Integera=newInteger(3);//定义Integer包装类对象,值为3intb=a+5; //将对象和基本类型进行运算装箱:inti=10; //定义一个int基本类型值Integerx=newInteger(i); //手动装箱Integery=i; //自动装箱拆箱:Integerj=newInteger(8); //定义一个integer包装类对象,值为8intm=Value(); //手动拆箱为int类型intn=j; //自动拆箱为int类型java中基本类型和字符串之间的转换基本类型转换为字符串有三种方法:使用包装类toString()方法使用String类的valueOf()方法用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串Intc=10;Stringstr1=Integer.toString(c); //方法一Stringstr2=String.valueOf(c); //方法二Stringstr3=c+””; //方法三将字符串转换成基本类型有两种方法调用包装类的parseXxx静态方法调用包装类的valueOf方法转换为基本类型的包装类,会自动拆箱Stringstr=”8”;intd=Integer.parseInt(str); //方法一inte=Integer.valueOf(str); //方法二使用Date和SimpleDateFormat类表示时间获取当前时间:Date类Dated=newDate(); //使用默认的构造方法创建Date对象System.out.println(d); //输出Date对象(显示当前时间)格式化日期和时间:SimpleDateFormat类使用format()方法将日期转换为指定格式的文本//创建Date对象,表示当前时间Dated=newDate();//创建SimpleDateFormat对象,指定目标格式SimpleDateFormatsdf=newSimpleDateFormat(“yyyy-MM-ddHH:mm:ss”);//调用format()方法,格式化时间,转换为指定格式的字符串Stringtoday=sdf.format(d);//输出转换后的字符串System.out.println(today);使用parse()方法将文本转换为日期//创建日期格式的字符串Stringday=”2016年3月27日15:30:33”;//创建SimpleDate.Format对象,指定字符串的日期格式SimpleDateFormatdf=newSimpleDateFormat(“yyyy年MM月dd日HH:mm:ss”);//调用parse()方法将字符串转换为日期Datedate=df.parse(day);//输出转换后的时间System.out.println(“当前时间:”+date);导包:Importjava.text.parseexception;Importjava.text.simple.date.format;Importjava.util.date;Calendar类的应用(相比Date更好~~~)包:java.util.Calendar //获取年月日、时间信息packagecom.imooc0327importjava.util.Calendar;publicclasstest2{ publicstaticvoidmain(String[]args){ Calendarc=Calendar.getInstance();//创建Canlendar对象 intyear=c.get(Calendar.YEAR);//获取年 intmouth=c.get(Calendar.MONTH)+1;//获取月份,0表示1月份 intday=c.get(Calendar.DAY_OF_MONTH);//获取日期 inthour=c.get(Calendar.HOUR_OF_DAY);//获取小时 intminute=c.get(Calendar.MINUTE);//获取分钟 intsecond=c.get(Calendar.SECOND);//获取秒 System.out.println("当前时间:"+year+"-"+mouth+"-"+day+""+hour+":"+minute+":"+second); }}使用Math类操作数据所有方法都是静态方法,可以直接使用类名.方法名常用方法:long: round() , 返回四舍五入后的整数double:floor(), 返回小于参数的最大整数Double : ceil(), 返回大于参数的最小整数Double : random(), 返回[0,1)之间的随机数浮点数实例:packagecom.imooc0327;publicclasstest3{ publicstaticvoidmain(String[]args){ doublea=12.21; //定义一个double类型的变量 intb=(int)a; //将double类型强制转换为int类型,去掉小数点 System.out.println("强制类型转换:"+b); longc=Math.round(a); //调用一个round方法,进行四舍五入 System.out.println("四舍五入:"+c); doubled=Math.floor(a); //调用floor方法,返回小于参数的最大整数 System.out.println("floor:"+d); doublee=Math.ceil(a); //调用ceil方法,返回大于参数的最小整数 System.out.println("ceil:"+e); doublex=Math.random(); //调用random方法,产生[0,1)之间的随机数浮点数 System.out.println("

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论