`
sunajax
  • 浏览: 34984 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Java学习笔记之二(数组和JDK常用类)

    博客分类:
  • Java
阅读更多
以下是我个人总结的一些Java中常用类
[list=1]
[*]数组(Array):我们这里所说的数组并不是java.util.Arrays,这个类提供数组操作的一些静态方法(如排序和二分查找等),数组在Java中就是对象,它具有length属性,分静态初始化
int[] a = {1,2,3};
和动态初始化
int[] a = new int[]{1,2,3};
有人肯定会奇怪如下代码,
 
        String s; s = "abc";//这样可以通过编译 
         int[] a; a = {1,2,3};//这样不能通过编译 

出现这个错误的原因主要是a的大小未确定,你可以这样赋值a={1,2,3},等下可能变成a={1,2,3,4,5},JVM并不能确定你的大小,和集合类并不一样;
[*]基本类型封装类:因为整数、浮点数和字符等经常需要操作,所以Java中定义了基本数据类型,减少了创建对象所带来的效率问题;在JDK1.5以后所有的封装类都缓存了一定范围的该类型的常量,调用封装类的valueOf()方法可以比构造方法更有效率得到该类的对象,例如:
 Integer inte = new Integer(2); Integer inte = Integer.valueOf(2);//更有效率

[*]System、Runtime、Random和Math:Runtime通过exec()方法执行系统进程,
System.getRuntime.exec("notepad");
System类可取得系统时间(System.currentTimeMillis()),运行垃圾收集器GC(System.gc()),通过
 System.setIn(PrintStream in); System.setOut(PrintStream out); 
改变默认的输入输出流,取得系统变量
System.getProperty("sun.boot.class.path");
Random和Math可取得随机数(Math.random());
  • 工具类(java.util):在java.util包中主要是集合(Collectioin)类,完全按照面向对象的思想设计,主要父接口是Collection和Map接口,Map接口存储键值对:
  • [list]
  • 由Collection派生出List和Set接口,区别能否存储相同元素,有人会奇怪List中包含get(int index)方法,而Set中并没有:
  •              因为List是按加入的顺序来储存元素的,所有的元素可通过get(int index)方法来取得,相当于是数组,而Set的存储顺序并不固定,无法通过get(int index)方法取到,所以在Set中也就没有此方法;
  • 由List派生出ArrayList和Vector,ArrayList比Vector效率要高些,因为ArrayList不是线程同步的;
  • 由Set派生出HashSet和TreeSet,他们都不是线程同步的,HashSet通过哈希(hash)算法决定对象存储的顺序,而TreeSet根据对象所实现的compareTo()方法来决定储存的顺序,所以加入到TreeSet中的对象都要实现compareTo()方法;
  • 由Map接口派生出HashMap和HashTable,其中HashMap不是线程同步的,效率高些,在HashTable中包含了返回Enumeration的elements()方法,而HashMap中没有,原因何在:
  •        因为HashTable在JDK1.1时继承于Dictionary类,所以继承了elements()方法用于返回所有值的Enumeration,在JDK1.2才修改让它实现了Map接口,elements()方法仍然保留下来。
    继承于HashTable有个比较重要的类:Properties,它用于读取Java属性文件(.properties),简单示例:
             Properties prop = new Properties();
             prop.load(new FileInputStream(new File("db.properties")));  //读取属性配置文件
              String value = prop.getProperty(key);  //根据关键字取得属性值
    
    分享到:
    评论

    相关推荐

      java学习笔记JDK6.0课件和代码

      这个压缩包中包含的"java学习笔记JDK6课件和课本代码"是学习JDK 6.0的重要参考资料,可以帮助你深入理解Java编程的核心概念和实践技巧。 1. **Java基础**:Java是一种面向对象的编程语言,它的基础包括类、对象、...

      (完整版)最全的java学习笔记(必看).pdf

      Java学习笔记 Java是一种流行的编程语言,广泛应用于Android应用程序开发、Web应用程序开发、桌面应用程序开发等...Java学习笔记涵盖了Java技术基础和Java语言基础两方面的知识点,为Java初学者提供了系统的学习资源。

      java学习笔记JDK6

      Java JDK 6学习笔记是Java开发者入门和进阶的重要参考资料,由知名作者林信良编著。本笔记主要涵盖了JDK 6版本的核心特性和关键概念,为读者提供了全面而深入的学习路径。以下是对其中重要知识点的详细阐述: 1. **...

      java学习笔记 JDK6 附代码

      本"java学习笔记 JDK6 附代码"资料包是针对初学者设计的,旨在帮助那些已经有C语言基础的学习者快速掌握Java编程。C语言的语法结构和基础概念与Java有共通之处,因此对于熟悉C的人来说,学习Java会相对容易一些。 ...

      JAVA JDK6学习笔记

      Java JDK6学习笔记是针对Java编程语言初学者和进阶者的一份宝贵资源,它涵盖了Java的基础语法,并通过经典且易于理解的实例进行讲解。在本文中,我们将深入探讨Java JDK6中的关键概念和特性,以帮助你更好地理解和...

      Java学习笔记,数组初步

      Java 中提供了 java.util.Arrays 类,包含了常用的数组操作,方便我们日常开发。Arrays 类包含了:排序、查找、填充、打印内容等常见的操作。 4. 多维数组 多维数组可以看成以数组为元素的数组。可以有二维、三维...

      JavaJDK6学习笔记(林信良著)

      《Java JDK6学习笔记》是由林信良编著的一本针对Java初学者和进阶者的学习资料,书中详细讲解了Java编程语言与JDK6版本的相关知识。这本笔记不仅包含传统的Java学习内容,还结合了作者独特的见解和实践经验,为读者...

      Java JDK 5.0学习笔记

      本学习笔记旨在帮助新手全面理解并掌握Java 5.0的关键知识点。 一、泛型(Generics) Java 5.0引入了泛型,它允许在定义类、接口和方法时指定类型参数,从而实现类型安全的集合。泛型消除了强制类型转换的需要,...

      Java学习笔记(JDK8)课内课后源码

      在提供的"Java学习笔记(JDK8,林信良)课本课后题源码"中,你可以找到这些特性的实际应用示例。代码经过测试,证明是成功的,这意味着它们是学习和理解JDK 8新特性的宝贵资源。同时,这些源码还修复了书中的一些错误...

      java学习笔记JDK6课件之五

      在这个"java学习笔记JDK6课件之五"中,我们主要探讨了一维数组和二维数组的概念、声明、初始化以及基本操作。 首先,一维数组是Java中最基础的数组形式,可以看作是一条线性序列。在Java中,声明一维数组通常包含两...

      java学习笔记.pdf

      "Java学习笔记" 本资源是一个关于Java编程语言的学习笔记,涵盖了Java的基础知识、语法、数据类型、变量、类型转换等方面的内容。 标题:"java学习笔记.pdf" 描述:"想自学的小伙伴可以看俺" 标签:"Java" 部分...

      Java学习笔记及心得

      总结以上知识点,Java学习笔记及心得主要涵盖了Java的环境配置、基本语法、面向对象编程的概念和实践等方面的内容。这些知识是Java编程入门和进一步学习的基础,为深入学习Java语言和理解其面向对象的特性提供了扎实...

      JAVA(JDK5.0)学习笔记

      ### JAVA(JDK5.0)学习笔记:深入理解数组与对象的关系 在深入探讨JAVA(JDK5.0)中数组的特性和应用之前,我们首先需要认识到数组在Java中的地位和作用远超于传统编程语言中纯粹的数据集合概念。数组在Java中被视为...

      java jdk 5学习笔记

      Java JDK 5是Java开发工具集的...在"java jdk 5学习笔记"中,你可能会找到这些特性的详细使用示例和实践教程,帮助你深入理解和应用这些知识。通过学习和实践,你可以提升自己的Java编程技能,更好地应对各种开发场景。

      java jdk 学习笔记

      在谈论Java JDK学习笔记之前,我们不妨先探讨一下Java程序员的薪资情况。这部分内容虽然不是直接与JDK的学习相关,但却是学习Java的一个重要动力之一。文中提到年薪10万是一个正常的薪资水平,而在一线大城市,如...

      良葛格Java JDK 5.0学习笔记ch05

      在这个"良葛格Java JDK 5.0学习笔记ch05"中,我们将深入探讨其中的关键知识点。 一、泛型 Java 5.0引入了泛型,这是一项强大的类型安全机制,允许在编译时检查类型。泛型可以应用于类、接口和方法,通过指定参数...

      java学习笔记JDK6课件之六

      在JDK6中,字符串被表示为`String`类的实例,这意味着它具有类的方法和属性,而不是简单的字符数组。 字符串在Java中是不可变的,这意味着一旦创建了一个字符串对象,就不能改变它的内容。例如,当我们执行`text +=...

      Java学习笔记.pdf

      Java学习笔记.pdf Java 是一种广泛应用的编程语言,它的开发环境、语言特点、基础语法等方面的知识是初学者必须掌握的。本资源提供了一个系统的 Java 学习笔记,涵盖了 Java 基础、面向对象、Java SE 核心等方面的...

      Java学习笔记(必看经典).doc

      这份“Java学习笔记(必看经典).doc”文档将涵盖Java的核心概念和重要知识点,对于初学者和有经验的开发者来说都是宝贵的参考资料。 首先,Java的基础部分通常包括以下几个方面: 1. **Java语法基础**:这是所有...

      《Java JDK 6 学习笔记》配书示例

      《Java JDK 6 学习笔记》这本书很可能是为了帮助读者深入理解和掌握这个版本的Java编程语言及其开发环境。以下是一些关键知识点的详细说明: 1. **自动装箱与拆箱**:Java 6中引入了自动装箱和拆箱功能,使得基本...

    Global site tag (gtag.js) - Google Analytics