1、如何比较字符串?使用 “==” 还是 “equals()”?
简单来讲,“==”比较的是引用(对象的内存地址),“equals()” 比较值是否相等。除非你想检测两个字符串是否是同一对象,否则都用equals()。当然了解字符串池的概念更好。
2、为什么对于安全敏感的信息使用char[] 优于String ?
Java 中字符串是不可变的,这就意味着一旦他被创建,在垃圾回收器收集之前都是一样的。使用数组你可以明确的修改它的元素,以这种方式,安全敏感的信息(如:密码)将不存在于系统的任何地方。
3、switch 语句中是否可以用String ?
在jdk7中是可以的。在jdk6以前的版本都不可以。
switch (str.toLowerCase()) { case "a": value = 1; break; case "b": value = 2; break; }
4、如何将String 转换为 int ?
int n = Integer.parseInt("10");
5、如何使用空白字符拆分字符串?
只需要简单的使用正则表达式“\s” 。 “\s” 代表着空白字符有“ ” , “\n” , " \r" , "\t" 。
String[] strArray = aString.split("\\s+");
6、substring()真正做了些什么?
在JDK6 中substring()方法提供了一个表示目前字符数组(该字符数组表示当前字符串)的窗口,但是并没有创建一个新的字符串。为了创建一个新的字符串,可以在substring()后面添加一个空字符串,如下所示:
str.substring(m, n) + ""
以上代码会创建一个字符数组表示新的字符串。以上方法在有些时候可以提高代码的效率,因为垃圾回收器可以回收大的String ,而只保存很少的子字符串。
在JDK7中,创建了一个新的char数组,而不是使用原来的char数组。关于该部分内容可以参见JDK6和JDK7中substring的区别
7、String VS StringBuilder VS StringBuffer
String VS StringBuiler : StringBuiler是可变的,这意味着创建以后还可以改变他的内容。
StringBuiler VS StringBuffer : StringBuffer 是同步的(线程安全),但是比StringBuiler慢。
8、如何重复字符串?
在python中我们是需要对字符串乘以一个数就可以表示重复字符串。在Java中可以使用Apache Commons Lang package 中StringUtils 的repeat方法。
String str = "abcd"; String repeated = StringUtils.repeat(str,3); //abcdabcdabcd
9、如何将字符串转换为Date对象
String str = "Sep 17, 2013"; Date date = new SimpleDateFormat("MMMM d, yy", Locale.ENGLISH).parse(str); System.out.println(date); //Tue Sep 17 00:00:00 EDT 2013
10、如何计数一个字符在字符串中出现的次数
使用Apache Commons Lang package 中StringUtils类。
int n = StringUtils.countMatches("11112222", "1"); System.out.println(n);
相关推荐
本文将详细介绍 Java String 的使用方法,包括 String 对象的初始化、字符串的常见操作等。 一、String 对象的初始化 String 对象的初始化是一种特殊的语法,Java 提供了简化的初始化方法,例如: String s = ...
下面将详细探讨Java String的十大常见问题及其解决方案。 1. **字符串比较:使用"=="还是equals()?** 在Java中,"=="运算符比较的是两个字符串对象的引用,即它们在内存中的位置,而equals()方法则比较的是两个...
此外,字符串拼接是Java开发中的常见操作。使用`+`运算符连接字符串虽然直观,但效率较低,因为它会导致多次`String`对象的创建。在需要大量拼接操作时,应优先考虑使用`StringBuilder`或`StringBuffer`。 总之,`...
Java 中 String 类型转换方法是一种常见的编程操作,涉及到各种数据类型之间的转换,包括整型、浮点型、长整型、浮点型等。本文将详细介绍 Java 中 String 类型转换方法的各种形式。 整型到字符串 在 Java 中,将...
在Java编程中,String对象和Byte类型的转换是常见的操作,特别是在网络编程中,因为网络通信通常涉及字节流的处理。下面将详细讲解Java中如何进行这两种类型之间的转换,并探讨其在网络编程中的应用。 首先,让我们...
Java String API 中常用的方法 Java String API 中提供了许多有用的方法来操作字符串,這些方法可以帮助开发者轻松地处理字符串操作。下面是 Java String API 中常用的方法: 一、获取 Java String API 中提供了...
在Java编程语言中,String类是处理文本字符串的核心类,而与各种进制字符之间的转换是常见的编程需求。本文将详细探讨Java中如何进行String与二进制、八进制、十进制以及十六进制之间的转换。 首先,我们要了解进制...
在Java编程中,字符串(String)是非常常见且重要的数据类型。本文主要讨论了如何正确判断Java中的String对象是否为null、空值("")以及它们的地址是否相等。在处理字符串时,了解这些概念对于避免程序出错至关重要。...
字符串拼接是Java中常见的操作,但如果使用不当,会生成许多不必要的临时对象,从而导致性能问题。例如,使用"+"号连续拼接多个字符串时,每次拼接都会创建新的String对象。这不仅消耗内存,还影响垃圾回收器的工作...
【Java String类常用方法详解与实战】 在Java编程语言中,`String`类是一个非常重要的类,它代表不可变的字符序列。所有的字符串字面值(例如:"abc")都是`String`类的实例。本篇文章将深入探讨`String`类的一些...
在Java开发中,字符串(String)、十六进制表示的字符串以及字节数组(byte[])之间的转换是非常常见的需求,尤其是在处理网络通信、文件读写等场景下。本文将详细介绍如何在Java中实现这些数据类型之间的相互转换,...
Java中的String、Vector和Scanner是三个非常基础且重要的概念,对于初学...它们是构建程序的基础模块,也是解决实际问题的常见工具。通过不断地实践和学习,可以逐步提升编程能力,为更高级的Java编程打下坚实的基础。
在Java编程语言中,`String`对象与`byte[]`数组之间的转换是常见的操作之一。理解这两者之间的关系对于处理文本数据、网络通信及文件读写等任务至关重要。 #### 一、String与byte[]的基本概念 - **String**: 在...
以上就是`String`类的一些常见方法,理解并熟练使用它们对于提升Java编程效率至关重要。在实际开发中,开发者通常会结合这些方法来处理字符串,实现各种文本操作。通过阅读和分析`TestString.java`文件,我们可以...
"Java中将String类型转换成Timestamp类型" ...将String类型转换成Timestamp类型是Java编程语言中的一种常见操作,该操作需要了解Timestamp类型的特点和限制,并使用正确的方法和技术来实现转换操作。
在Java开发中,JavaBean和JsonString是两种常见的数据表示形式。JavaBean是Java对象的一种规范,用于封装数据,而JsonString是一种轻量级的数据交换格式,常用于前后端交互。本篇将深入探讨JavaBean与JsonString之间...
Java中的`String`类是编程中非常基础且重要的部分,它代表不可变的字符序列。在Java中,字符串常量都是存储在常量池中,每次创建新的`String`对象时,如果常量池中已经存在相同的字符串,那么就不会创建新的实例,...
由于字符串在编程中极为常见,理解和熟练掌握String类的用法至关重要。在面试中,Java String类的操作和用法经常成为考察的重点。 首先,Java String类是不可变的,这意味着创建一个String对象后,它的内容无法更改...
### Java中String类的知识 #### 一、String 类概述与创建方式 在Java语言中,`String`类是用于表示不可变字符序列的核心类之一。它代表了一个字符串对象,一旦被初始化后,其内容不能被改变。这被称为不可变性...