前言 上一节我们讲解了字符串的特性,除了字符串类外,还有两个我们也会经常用到的类,那就是StringBuffer和StringBuilder.因为字符串不可变,所以我们每次对字符串的修改比如通过连接concat.trim等都会创建一个新的字符串对象,那么我们如何在不创建字符串垃圾(大量临时的字符串)的 情况下操作字符串呢?答案则是使用StringBuffer和StringBuilder,StringBuffer是旧类,但是在Java 5中新增了StringBuilder,并且在Enum,Gene…
这篇文章带你学会字符串的日常操作 String类 字符串在日常生活中无处不在,所以掌握字符串的使用至关重要. 使用 String 对象存储字符串,String 类位于 java.lang 包中,java.lang 不需要我们手动导入可以直接使用. 敲一敲:String对象存储字符串 String s="Hello world"; String s=new String(); String s=new String("Hello world"); 下面列出一些常用的方…
String,StringBuilder,StringBuffer三者的区别 1.首先说运行速度,或者说是执行速度 在这方面运行速度快慢为:StringBuilder > StringBuffer > String String最慢的原因: String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,这样不仅效率低下,而且大量浪费有限的内存空间. String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦…
JDK源码分析系列---String,StringBuilder,StringBuffer 1.String public final class String implements java.io.Serializable, Comparable<String>, CharSequence { //存储字符,final修饰 private final char value[]; //缓存hash code,默认0 private int hash; //序列号 private static…
集合 如何存储每天的新闻信息?每天的新闻总数是不固定的,太少浪费空间,太多空间不足. 如果并不知道程序运行时会需要多少对象,或者需要更复杂方式存储对象,可以使用Java集合框架. Java 集合框架提供了一套性能优良.使用方便的接口和类,位于 java.util 包中. 接口 Collection 存储一组不唯一,无序的对象,它有两个子接口 List和Set.List 接口存储一组不唯一,有序(插入顺序)的对象.Set 接口存储一组唯一,无序的对象. 接口 Map 存储一组键值对象,提供 key…
认识 JDBC JDBC (Java DataBase Connectivity) 是 Java 数据库连接技术的简称,用于连接常用数据库. Sun 公司提供了 JDBC API ,供程序员调用接口和类,集成在 java.sql 和 javax.sql 包中. Sun 公司还提供了 DriverManager 类用来管理各种不同的JDBC驱动. 不同数据库厂商提供各自的JDBC驱动,所以我们想要连接数据库除了要了解 JDBC API 还需要下载各数据库厂商的驱动 jar 包. JDBC API…
String类  (1)字符串:字符串是常量:它们的值在创建之后不能更改,存储在堆中.          如果字符串多次赋值,其实是每次重新赋值的时候程序都先在内存中寻找已开辟的空间是否存在该值;如果找不到,再开辟新的空间存储该对象 (2)构造方法:    A:String s = new String(); //空字符序列    B:String s = new String(char[] chs); //分配一个新的 String,使其表示字符数组参数中当前包含的字符序列.    C:Str…
面向对象综述 封装 封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项,或者叫接口. 有了封装,就可以明确区分内外,使得类实现者可以修改封装内的东西而不影响外部调用者:而外部调用者也可以知道自己不可以碰哪里. 这就提供一个良好的合作基础——或者说,只要接口这个基础约定不变,则代码改变不足为虑. 封装成员方法来间接操作类里面的成员变量 使用成员属性来间接访问类里面的成员变量 访问修饰符 private 私有的 只能在该类中访问 protected 受保护的 只能在该类和它的子类中访问 p…
本节主要讲解: 1)json格式数据处理方法 2)第三方工具包的使用方法 3)java集合数据类型 [项目任务] 编写一个程序,显示未来的天气信息. [知识点解析] 为了方便后面代码的分析,先需要掌握几个相关的知识. 1.什么是json格式数据 从结构上看,我们所见到的所有的数据(data)最终都可以分解成三种类型: 第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词. 第二种类型是序列(sequence),也就是…
前言 前面两节内容我们详细讲解了Hashtable算法和源码分析,针对散列函数始终逃脱不掉hashCode的计算,本节我们将详细分析hashCode和equals,同时您将会看到本节内容是从<Effective Java>学习整理而来(吐槽一句,这本书中文版翻译的真垃圾),对于<Effective Java>这本书很有学习价值,但是我不会像其他童鞋一样,直接从这本书讲解一个系列,我所采用的是学习到对应地方然后参考不同java经典书籍进行总结,循序渐进式这样效果更佳,好了,我们开始吧…