`
翩跹吉吉
  • 浏览: 103469 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

JAVA通用类----String类

    博客分类:
  • Java
阅读更多

JAVA 可分为两种类型: 一个是基本数据类型(8种)、一个是引用类型(3种);

 

基本数据类型(8种):byte、short、char、int、long、float、double、boolean。

 

引用类型(3种):数组、对象、接口。

 

误区:

1.Int 和 Integer 的区别?

Int 是基本数据类型中的一种,而Integer是引用类型,是int的包装类,用于对数据类型间相互操作的实现!

 

2.String类型的理解?

其实很多Java初学者,很容易犯的一个错误解释把String和其他8中基本数据类型相混淆,觉得string也是基本数据类型,其实这样的错误是由于平时对String的使用有关,比如:String s = "abc"; 它和其他基本数据类型的声明几乎一样,所以导致了这样错误的理解,String其实是一个引用数据类型,它基础于Object类,是一个终态类,不能被继承。

 

字符串String的操作:这是一个在实际工作中很常见的一个工作,虽然有很多类或者是一些框架已经帮我们完成了很多的字符串操作工作,但在很多时候我们还是要完成一些复杂的字符串操作,一下是字符串操作(解析)所需要用到的方法和类,供大家参考学习:

 

  常用String类的方法

    ---.length() 返回字符串长度   ---.indexOf("x")返回"x"所在字符串的位置  ---.charAt(i)返回第i个字符

    ---.subString(beginIndex)  ---.subString(beginIndex,endIndex) 截取字符串

  常用字符串操作类:StringTokenizer。

 

 

虽然String在字符串操作上提供了很多方便,但由于其长度一旦定义就不可修改,也带来了很多性能方面的问题,因此我们接下来将要引入两个类来解决此问题:

 

StringBuffer类解决了String长度不可修改的问题,具体使用如下:

 

     StirngBuffer sb = new StringBuffer("abc");

     sb.apend("def"); //追加需要的字符,任然保持一个对象,不会新建对象,解决了性能问题;

 

StringBuffer固然好,但如果我们看看他的源代码,就会发现它是synchronized修饰的,如果在高并发量的情况下,性能任然会出现很大的问题,因此我们将引入情外一个类来结局其问题,StringBuilder,它是线程不安全的但效率高,因此我们在选择这3个类时必须根据我们的实际需求去酌情选择。

 

分享到:
评论

相关推荐

    积分java源码-java-data-types-string-apis-java-se-11:java-data-types-string-

    积分java源码java-data-types-string-apis-java-se-11 嗨,欢迎来到练习项目,使用 java 数据类型和字符串 API。 在这个项目中,我们将涵盖许多与原始类型和变量相关的主题,而大多数 Java 课程提供通用信息。 本...

    (超赞)JAVA精华之--深入JAVA API

    - **String类与 StringBuffer类** - `String` 类不可变,一旦创建后其内容无法更改;而 `StringBuffer` 类则允许在原有基础上修改字符串。`StringBuffer` 可以通过调用 `toString()` 方法转换为 `String` 类型。 -...

    mysql-connector-java-5.1.25, mysql 5.7.31亲测有效

    `mysql-connector-java-5.1.25.jar`是这个驱动程序的二进制文件,包含了Java类和其他资源,用于连接到MySQL服务器并执行SQL查询。这个特定的版本兼容性广泛,适用于许多基于Java的应用场景。当下载并将其添加到项目...

    java----java面试

    - **抽象类**:可以包含抽象方法和非抽象方法,用于提供一个通用框架,并允许子类实现特定的行为。 - **接口**:全部由抽象方法组成,用于定义一种行为规范。接口中的方法默认是public abstract,不允许有方法体。 ...

    java 通用比较类

    本文将深入探讨Java中通用比较类的概念、实现方式以及它们在实际编程中的应用。 1. **比较器接口(Comparator)** Java中的`Comparator`接口位于`java.util`包下,它定义了一个`compare()`方法,用于比较两个对象...

    Java基础知识-day01【Object类、常用API】.pdf

    Object类提供了处理对象通用的方法。 - **toString()**:返回对象的字符串表示。默认实现返回类名加@符号后跟对象的内存地址。通常我们需要重写此方法,以便返回对象的属性值组成的字符串,方便打印和调试。例如...

    mysql-connector-java-8.0.15.jar

    通过JDBC,开发者可以编写通用的Java代码,无需关心底层数据库的具体实现。MySQL Connector/J就是实现了JDBC接口的MySQL驱动,使得Java程序能够与MySQL数据库进行交互。 MySQL Connector/J 8.0.15包含了以下主要...

    java时间处理工具类--DateUtils

    /** * @(#)DateUtil.java * ... public static Date strToDate(String dateStr, String format) { Date date = null; if (dateStr != null && (!dateStr.equals(""))) { DateFormat df ...

    2JAVA编程高级-集合类.pdf

    ### JAVA编程高级——集合类知识点详解 #### 一、Java中的集合类概述 在Java编程中,集合类是一个非常重要的概念,它主要用于存储和管理对象的集合。与数组相比,集合提供了更多的灵活性,例如动态调整大小的能力...

    【源代码】明解Java-UTF-8.rar

    1. 字符串操作:Java中的`String`类与UTF-8的交互,如创建、比较、转换和操作字符串。`getBytes()`和`new String(byte[], charset)`方法用于将字符串编码为字节数组或从字节数组解码字符串。 2. 输入/输出流:使用`...

    Java学习笔记---15.面向对象编程10-Java中final关键字,抽象类与接口

    - `final`修饰变量时,如果是类级别的常量,通常遵循全大写命名约定,如`public static final String MY_CONSTANT = "value"`。 2. **抽象类(Abstract Class)** - 抽象类是一种包含抽象方法的类,抽象方法只有...

    java操作json的通用类

    2. **JsonTest.java** - 这是测试类,用于验证`JsonUtil`类的功能。测试类通常包含JUnit或其他测试框架的测试用例,检查JSON操作是否按预期工作。测试可能涵盖各种场景,如正常输入、边界条件和异常处理。 3. **...

    JAVA通用查询工具类

    标题中的"JAVA通用查询工具类"指的是这样一类专门处理数据库查询的类,它通常包含了连接数据库、执行SQL语句、处理结果集等功能。在给定的文件中,我们有两个关键的Java源文件:SqlFactory.java和SuperSelect.java,...

    Mixing-C-and-Java-for-High-Performance-Computing

    然而,随着技术的发展,基于通用处理器的系统逐渐替代了专用逻辑和可编程处理器,这为软件选择提供了更多可能性。 Java平台,特别是Java框架,由于其丰富的开源支持、广泛的厂商支持以及平台独立性,近年来在HPC...

    java编程基础-01

    Java通过将源代码编译成字节码,使得程序能够在安装了Java虚拟机(JVM)的任何操作系统上运行,这极大地提高了Java程序的移植性和通用性。 **2.2 简洁性** - **精简的语法**: Java的设计尽可能简洁明了,减少了...

    Java文件对话框---FileDialog.pdf

    尽管如此,`FileDialog`仍然是Java应用程序中进行基本文件操作的通用且易于使用的工具。 需要注意的是,Java Swing库提供了更现代和可定制的`JFileChooser`类,它取代了`FileDialog`,提供了更多的功能和更好的跨...

    Java-based-tutorial.rar_java 基础教程

    - **主函数**:每个Java应用程序都从`public static void main(String[] args)`函数开始执行。 - **数据类型**:Java分为基本类型(如int、char、boolean)和引用类型(如类、接口、数组)。 - **变量**:声明变量并...

    java面试题-----

    - **CGI**是通用网关接口,每个请求产生新的进程,处理完后销毁,效率较低。 7. **ArrayList, Vector, LinkedList的特性** - **ArrayList和Vector**都是基于数组实现,支持随机访问,但插入和删除效率低。 - **...

    完整版Java全套入门培训课件 Java基础 01-Java概述(共31页).rar

    - 主方法(Main Method):每个Java应用程序都从主方法开始执行,定义为`public static void main(String[] args)`。 5. **基本语法** - 变量声明:包括数据类型如int、double、boolean,以及变量名的命名规则。 -...

Global site tag (gtag.js) - Google Analytics