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 ...
随机推荐
- gdb调试python
一.概述 有时我们会想调试一个正在运行的Python进程,或者一个Python进程的coredump.例如现在遇到一个mod_wsgi的进程僵死了,不接受请求,想看看究竟是运行到哪行Python代码呢 ...
- iOS极光推送的基本使用
昨天花了一下午的时间研究了下极光推送,也前也是没做过,不知道从何下手!才开始的时候一看官方的SDK感觉好难,不过经过一系列的捣鼓之后,手机收到了推送信息,感觉其实并没有那么难! 1.配置开发证书(得有 ...
- git SSh key多个key对应多个项目
必看 1. 本文不教你怎么生成key,主要解决多个项目对应多个SSH KEY的问题,在csdn code库上遇到的人估计很苦恼,为什么多个项目不能用一个key,为什么添加相同的key就会报重复 2. ...
- 并发编程: c++11 thread(Func, Args...)利用类成员函数创建线程
c++11是VS2012后支持的新标准,为并发编程提供了方便的std::thread. 使用示例: #include <thread> void thread_func(int arg1, ...
- jQuery和DOM对象之间的转换
jquery选择器得到的jquery对象和标准的 javascript中的document.getElementById()取得的dom对象是两种不同的对象类型,一般情况下,如S(’#id’)得到的是 ...
- Lucky Sum
Description Lucky Sum time limit per test: 2 seconds memory limit per test: 256 megabytes input: sta ...
- [原创]obj-c编程15[Cocoa实例02]:KVC和KVO的实际运用
原文链接:obj-c编程15[Cocoa实例02]:KVC和KVO的实际运用 我们在第16和第17篇中分别介绍了obj-c的KVC与KVO特性,当时举的例子比较fun,太抽象,貌似和实际不沾边哦.那么 ...
- Red Hat Enterprise Linux Release Dates
Red Hat Enterprise Linux Release Dates UpdatedMay 10 2016 at 10:57 PM - English The tables below lis ...
- CSS选择器、优先级和匹配原理
作为一个Web开发者,掌握必要的前台技术也是很重要的,特别是在遇到一些实际问题的时候.这里给大家列举一个例子: 给一个p标签增加一个类(class),可是执行后该class中的有些属性并没有起作用.通 ...
- 無塵室(Clean Room)的級數標準規格
無塵室又稱潔淨室,是將一定空間範圍內空氣的微塵粒子.有害氣體.細菌等之污染物控制在一定的數量內.無塵室的等級是以一立方英呎含有多少大於0.5um的微塵粒子來定義的.下表是根據「美國聯邦標準209D規格 ...