String字符串需要掌握的几个问题
一、两种定义方式的区别:
String str = "hello";
先在堆内存中查找是否已经有"hello",若有,将str指向已存在的它即可;若堆内存中没有,则新建一个"hello"对象,并赋给str。
String str = new String("hello");
不管堆内存中是否已经有"hello",直接新建一个"hello"对象。
另外:“==”比较的是地址,也就是说判断是否是同一个对象;“equals”比较的是值。
package Test527;
public class StringTest {
/**
* @param args
*/
public static void main(String[] args) {
String s1 = "hello";
String s2 = "hello";
String s3 = new String("hello");
//比较s1和s2的值是否相等
if(s1.equals(s2))
System.out.println("true");
else
System.out.println("false");
//比较s1和s2是否是同一个对象
if(s1==s2)
System.out.println("true");
else
System.out.println("false");
//比较s1和s3的值是否相等
if(s1.equals(s3))
System.out.println("true");
else
System.out.println("false");
//比较s1和s3是否是同一个对象
if(s1==s3)
System.out.println("true");
else
System.out.println("false");
}
}
二、String和Char[] 的互相转换:
package Test527;
public class StringAndChar {
/**
* @param args
*/
public static void main(String[] args) {
String str = "hello";
char ch[] = {'w','o','r','l','d'};
//将String转换成char
char ch2[] = str.toCharArray();
for(int i=0;i<ch.length;i++)
{
System.out.println(ch2[i]);
}
//将char转换成String,方法一:
String str2 = new String(ch);
System.out.println(str2);
//将char转换成String,方法二:
String str3 = String.valueOf(ch);
System.out.println(str3);
}
}
String ——> char[ ] : 调用String类的toCharArray()方法。
char[ ] ——> String : 1.利用String(char[] ch)的构造方法;2.调用String类的静态方法valeOf(char[] ch)。
另外:关于他俩的长度,
String类里有length()方法;str.length();
char[ ] 字符数组则有length的属性,ch.length;
三、int类型转换成String类型:把整形数字24转换成字符串。
三种方法:
1.24+""
2.String.valueof(24)。运用String类里的静态方法valueof(int i)
3.Integer.toString()。运用Integer类里的静态方法toString(int i)
int x = 24;
String str_x1 = x+"";
String str_x2 = String.valueOf(x);
String str_x3 = Integer.toString(x);
System.out.println(str_x1+"\n"+str_x2+"\n"+str_x3);
String字符串需要掌握的几个问题的更多相关文章
- Java String字符串/==和equals区别,str。toCharAt(),getBytes,indexOf过滤存在字符,trim()/String与StringBuffer多线程安全/StringBuilder单线程—— 14.0
课程概要 String 字符串 String字符串常用方法 StringBuffer StringBuilder String字符串: 1.实例化String对象 直接赋值 String str=& ...
- [CareerCup] 1.3 Permutation String 字符串的排列
1.3 Given two strings, write a method to decide if one is a permutation of the other. 这道题给定我们两个字符串,让 ...
- 03-Java String字符串详解
1.Java字符串String A.实例化String字符串:直接赋值(更合理一些,使用较多).使用关键字new. B.String内容的比较 // TODO Auto-generated metho ...
- C++学习38 string字符串的增删改查
C++ 提供的 string 类包含了若干实用的成员函数,大大方便了字符串的增加.删除.更改.查询等操作. 插入字符串 insert() 函数可以在 string 字符串中指定的位置插入另一个字符串, ...
- C++学习37 string字符串的访问和拼接
访问字符串中的字符 string 字符串也可以像字符串数组一样按照下标来访问其中的每一个字符.string 字符串的起始下标仍是从 0 开始.请看下面的代码: #include <iostrea ...
- java String字符串——进度1
String字符串 在JAVA中提供了多种创建字符串对象的方法,这里介绍最简单的两种, 第一种是直接赋值, 第二种是使用String类的构造方法: 如下所示: Strin ...
- 关于String字符串反转
这是网上看到的一篇java面试题中的问题: 问题是: 如何将一个String字符串反转. String str = "1234567"; int length = str.leng ...
- JavaScript的内置对象(Date日期+string字符串)基础语法总结
1.Date日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒). 1)定义一个时间对象 : var Udate=new Date(); //注意:使用关键字new,Date()的首 ...
- 【转】String字符串相加的问题
String字符串相加的问题 前几天同事跟我说我之前写的代码中在操作字符串时候,使用字符串相加的方式而不是使用StringBuffer或者StringBuilder导致内存开销很大.这个问题一直在困扰 ...
- 从零开始学习前端JAVASCRIPT — 3、JavaScript基础string字符串介绍
1:字符串 JS中的任何数据类型都可以当作对象来看.所以string既是基本数据类型,又是对象. 2:声明字符串 基本数据类型:var sStr = '字符串'; 对象的方法:var oStr = n ...
随机推荐
- ASP.NET MVC4 json序列化器
ASP.NET MVC4中调用WEB API的四个方法 2012年06月07日00:05 it168网站原创 作者:廖煜嵘 编辑:景保玉 我要评论(0) [IT168技术]当今的软件开发中,设计软件的 ...
- uva 10051 Tower of Cubes(DAG最长路)
题目连接:10051 - Tower of Cubes 题目大意:有n个正方体,从序号1~n, 对应的每个立方体的6个面分别有它的颜色(用数字给出),现在想要将立方体堆成塔,并且上面的立方体的序号要小 ...
- 基于jQuery实现的水平和垂直居中的div窗口
在建立网页布局的时候,我们经常会面临一个问题,就是让一个div实现水平和垂直居中,虽然好几种方式实现,但是今天介绍时我最喜欢的方法,通过css和jQuery实现. 1.通过css实现水平居中: 复 ...
- Linux学习之/etc/init.d/functions详解
转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=28773997&id=3996557 /etc/init.d/f ...
- mysql 5.6.20的安装、配置服务、设置编码格式
一.安装 安装环境 系统:Window 32 版本:Mysql 5.6.20 1. 首先从官网上http://dev.mysql.com/downloads/mysql/ ...
- jQuery1.9.1针对checkbox的调整
在jquery 1.8.x中的版本,我们对于checkbox的选中与不选中操作如下: 判断是否选中 $('#checkbox').prop('checked') 设置选中与不选中状态: $('#che ...
- navigator.geolocation例子
navigator.geolocation例子 <html> <head> <script type="text/javascript"> fu ...
- iMac Termanel命令まとめ
1.mac环境下命令的使用ls -l -a 列出指定目录下文件 -l 显示文件的详细信息 -a 显示目录下所有文件(包括隐藏文件) -d ...
- 初识Sencha Touch:面板Panel
HTML代码: <!doctype html> <html> <head> <meta charset="utf-8"> <t ...
- SQL Server 一些重要视图3
1. sys.dm_tran_locks; 为每一把锁返回一行.request_session_id 可以与sys.dm_tran_session_transactions \sys.dm_exec_ ...