当前位置: 首页 > news >正文

免费企业建网站域名解析查询工具

免费企业建网站,域名解析查询工具,模板网站建设 百度,做一个网站得多少钱两种创建String对象的区别 String s1 "hello"; String s2 new String("hello");s1是先查看常量池是否有 “hello” 数据空间,如果有就直接指向它,如果没有就创建然后指向它。s1最终指向的是常量池的空间地址。 s2是先在堆中创建空…

两种创建String对象的区别

String s1 = "hello";
String s2 = new String("hello");

s1是先查看常量池是否有 “hello” 数据空间,如果有就直接指向它,如果没有就创建然后指向它。s1最终指向的是常量池的空间地址。
s2是先在堆中创建空间,里面有value属性,指向常量池的 “hello” 空间,如果常量池没有 “hello” 则创建,如果有则通过value指向,s2最终指向的是堆中的空间地址。
s1和s2的内存布局
在这里插入图片描述
那我们来看下面的题目:

String a = "abc";
String b = "abc";
// true equals比较的是值是否相等
System.out.println(a.equals(b)); 
// true a和b的地址是一样的
System.out.println(a==b); 
String a = "hello";
String b = new String("hello");
// true  比较的是值
System.out.println(a.equals(b));// false  根据上面的内存布局可以看出a,b地址不一样
System.out.println(a==b);
//b.intern() 返回的是常量池的地址 所以是 true
System.out.println(a==b.intern()); 
//b指向堆中的地址,b.intern()返回的是常量池的地址所以是false
System.out.println(b==b.intern()); 
String s1 = "hello java";
String s2 = "hello";
String s3 = "hello";
String s4 = new String("hello");
System.out.println(s2==s4); //false 地址不一样
System.out.println(s2==s3); //true 都指向常量池的hello空间
System.out.println(s2.equals(s3));// true 比较内容是否相等
System.out.println(s1==s2); // false 指向的常量池地址不一样
Person p1 = new Person();
p1.name = "小徐";
Person p2 = new Person();
p2.name = "小徐";
// 如图所示 地址相同 true
System.out.println(p1.name==p2.name);
//比较的是值是否相等 true
System.out.println(p1.name.equals(p2.name)); 
//true
System.out.println(p1.name=="小徐");

在这里插入图片描述
String类是一个final类,代表不可变的字符序列。字符串是不可变的,字符串对象一旦被分配,值就不可变。

String s = "java";
s = "hello";

上面的代码一共创建了两个对象
在这里插入图片描述

String s1 = "java";
String s2 = "hello";
//根据debug我们可以知道,先会创建一个StringBuilder对象,
//然后后执行里面的append方法,最后调用toString
String s3 = s1 + s2;

在这里插入图片描述

public class StringExcise02 {String str = new String("hello");final char[] ch = {'j','a','v','a'};public void change(String str,char[] ch) {str = "java";ch[0] = 'x';}public static void main(String[] args) {StringExcise02 ex= new StringExcise02();ex.change(ex.str, ex.ch);System.out.println(ex.str + "end"); //helloendSystem.out.println(ex.ch); //xava}
}

在这里插入图片描述
StringBuffer类
StringBuffer保存的是字符串变量,里面的值可以更改,每次更新不用创建新的对象,效率高于String。
String转StringBuffer

String str = "java";
//返回的stringBuffer才是StringBuffer对象,对str本身没有影响
StringBuffer stringBuffer = new StringBuffer(str);
//使用append方法
StringBuffer stringBuffer1 = new StringBuffer();
stringBuffer1 = stringBuffer1.append("java");

StringBuffer转String

StringBuffer stringBuffer2 = new StringBuffer("java");
//使用StringBuffer提供的toString方法
String s = stringBuffer2.toString();
//使用构造器s
String s1 = new String(stringBuffer2);

例题:把数字 234156.33 按示例 234,156.33 打印

public class StringExcise04 {public static void main(String[] args) {String price = "234156.33";StringBuffer stringBuffer = new StringBuffer(price);for (int i = stringBuffer.lastIndexOf(".") - 3; i > 0; i -= 3) {stringBuffer = stringBuffer.insert(i, ",");}System.out.println(stringBuffer);}
}

StringBuilder类
String和StringBuilder最大的区别在于String的内容无法修改,而StringBuilder的内容可以修改。频繁修改字符串的情况考虑使用StringBuilder。

String和StringBuilder类不能直接转换。如果要想互相转换,可以采用如下原则:
String变为StringBuilder: 利用StringBuilder的构造方法或append()方法
StringBuilder变为String: 调用toString()方法。

String、StringBuffer、StringBuilder的区别。

  • String的内容不可修改,StringBuffer与StringBuilder的内容可以修改.
  • StringBuffer与StringBuilder大部分功能是相似的
  • StringBuffer采用同步处理,属于线程安全操作;而StringBuilder未采用同步处理,属于线程不安全操作
http://www.yidumall.com/news/64113.html

相关文章:

  • 做靠谱的网络兼职网站百度seo关键词优化推荐
  • 凡客怎么了真实有效的优化排名
  • api模式网站开发网络舆情监测系统
  • node做网站后台厦门百度关键词seo收费
  • 建筑网站建设赏析百度网站是什么
  • 建设银行个人网站打不开计算机培训短期速成班
  • 遵义网站建设gzyhg软文广告
  • 深度网络seo的工作内容主要包括
  • 公司网站招聘板块怎么做成都高薪seo
  • 太原网站开发产品推广步骤
  • 南庄做网站温州企业网站排名优化
  • 邢台做网站哪个网络公司好系统开发
  • 开平网站制作百度seo营销推广多少钱
  • 做一手房的网站如何推广我的网站
  • 济宁北湖建设集团网站百度是国企还是央企
  • 做游戏角色视频的网站seo教程网站
  • 南昌网站建设业务手机优化什么意思
  • 智慧团建网站登陆店铺引流的30种方法
  • 网站图标按钮用什么做苏州网络推广seo服务
  • 德阳哪里有做网站的优化最狠的手机优化软件
  • 做防水的网站有哪些seo博客网站
  • 做b网站百度手机怎么刷排名多少钱
  • 问问建设网站的人优化模型有哪些
  • qq互联 网站建设不完善口碑营销的优缺点
  • 大浪做网站公司营销推广渠道有哪些
  • 分类信息网站怎么做semester是什么意思
  • 关于政府门户网站建设 以下说法正确的是营销策略怎么写模板
  • 手机网站 方案制作一个app软件需要多少钱
  • 网站租用服务器seo排名工具给您好的建议下载官网
  • 怎么做网络推广网站网站开发软件