一、两种定义方式的区别:

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字符串需要掌握的几个问题的更多相关文章

  1. Java String字符串/==和equals区别,str。toCharAt(),getBytes,indexOf过滤存在字符,trim()/String与StringBuffer多线程安全/StringBuilder单线程—— 14.0

    课程概要 String 字符串 String字符串常用方法 StringBuffer StringBuilder String字符串: 1.实例化String对象 直接赋值  String str=& ...

  2. [CareerCup] 1.3 Permutation String 字符串的排列

    1.3 Given two strings, write a method to decide if one is a permutation of the other. 这道题给定我们两个字符串,让 ...

  3. 03-Java String字符串详解

    1.Java字符串String A.实例化String字符串:直接赋值(更合理一些,使用较多).使用关键字new. B.String内容的比较 // TODO Auto-generated metho ...

  4. C++学习38 string字符串的增删改查

    C++ 提供的 string 类包含了若干实用的成员函数,大大方便了字符串的增加.删除.更改.查询等操作. 插入字符串 insert() 函数可以在 string 字符串中指定的位置插入另一个字符串, ...

  5. C++学习37 string字符串的访问和拼接

    访问字符串中的字符 string 字符串也可以像字符串数组一样按照下标来访问其中的每一个字符.string 字符串的起始下标仍是从 0 开始.请看下面的代码: #include <iostrea ...

  6. java String字符串——进度1

    String字符串    在JAVA中提供了多种创建字符串对象的方法,这里介绍最简单的两种,    第一种是直接赋值,    第二种是使用String类的构造方法:    如下所示:    Strin ...

  7. 关于String字符串反转

    这是网上看到的一篇java面试题中的问题: 问题是: 如何将一个String字符串反转. String str = "1234567"; int length = str.leng ...

  8. JavaScript的内置对象(Date日期+string字符串)基础语法总结

    1.Date日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒). 1)定义一个时间对象 : var Udate=new Date(); //注意:使用关键字new,Date()的首 ...

  9. 【转】String字符串相加的问题

    String字符串相加的问题 前几天同事跟我说我之前写的代码中在操作字符串时候,使用字符串相加的方式而不是使用StringBuffer或者StringBuilder导致内存开销很大.这个问题一直在困扰 ...

  10. 从零开始学习前端JAVASCRIPT — 3、JavaScript基础string字符串介绍

    1:字符串 JS中的任何数据类型都可以当作对象来看.所以string既是基本数据类型,又是对象. 2:声明字符串 基本数据类型:var sStr = '字符串'; 对象的方法:var oStr = n ...

随机推荐

  1. java对象的内存布局(二):利用sun.misc.Unsafe获取类字段的偏移地址和读取字段的值

    在上一篇文章中.我们列出了计算java对象大小的几个结论以及jol工具的使用,jol工具的源代码有兴趣的能够去看下.如今我们利用JDK中的sun.misc.Unsafe来计算下字段的偏移地址,一则验证 ...

  2. 浏览器返回按钮不会触发onLoad事件

    最近在做一个移动端项目,发现移动端某些返回和PC端是有差异的, 比如ios中返回按钮是直接使用缓存的, 不会执行任何js代码, 这个问题很蛋疼, 例如, 在提交的时候将按钮设置为loading状态, ...

  3. jQuery源码笔记——准备

    将变量局部化 作为一个库首要解决的问题就是防止影响全局的变量.自执行匿名函数可以很好的实现这一点. 传入window,undefiend是将全局变量改为局部变量,根据作用域链访问原理,访问更快一些,. ...

  4. datagrid指定行合并导出

    导出代码: public void GridViewToExcel(GridView ctrl, string FileType, string FileName) { HttpContext.Cur ...

  5. echarts如何做出堆积图总计的效果

    首先说下,我这这数据是假数据,实际是公司做图的一部分数据自己修改了下下,不涉及泄密什么的. 第一.echarts本身是没有这个在柱子上面加total的这点大家默认下就好了,因为我不是什么前端专职程序员 ...

  6. SQL Server 函数执行

    在SQL Server 不只是procedure 可以用execute 来执行 function 也是可以的 例子: create function ufn_A( @i as int) returns ...

  7. 8. java.lang.ArithmeticException

    java.lang.ArithmeticException 数学运算异常 当算术运算中出现了除以零这样的运算就会出这样的异常.

  8. Linux bug 14258279: scheduling clock overflows in 208 days

    早上同事反映数据库不能用.无法正常登录主机.多次尝试后终于登上主机,检查系统日志发现下述错误: BUG: soft lockup - CPU#5 stuck for 17163091988s! 貌似是 ...

  9. Oracle EBS-SQL (SYS-20):职责使用菜单2.sql

    select frt.responsibility_name,         fr.menu_id,         fm.menu_name,         fr.request_group_i ...

  10. tail -f

    http://stackoverflow.com/questions/187587/looking-for-a-windows-equivalent-of-the-unix-tail-command ...