栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 字符串格式化和工具类使用,Java性能优化面试题集锦

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 字符串格式化和工具类使用,Java性能优化面试题集锦

java 内置操作

=========

format


我们知道平时我们都会做字符串拼接打印操作,单还是在用➕号嘛,那样就很low为力显示逼格,使用format操作很有必要

String类的format()方法用于创建格式化的字符串以及连接多个字符串对象,制定字符串格式和参数生成格式化的字符串。显示不同转换符实现不同数据类型到字符串的转换

测试用例

@Test

public void a() {

String str = “”;

str = String.format(“Hi,%s”, “王力”);

System.out.println(str);

str = String.format(“Hi,%s:%s.%s”, “王南”, “王力”, “王张”);

System.out.println(str);

System.out.printf(“字母a的大写是:%c %n”, ‘A’);

System.out.printf(“3>7的结果是:%b %n”, 3 > 7);

System.out.printf(“100的一半是:%d %n”, 100 / 2);

System.out.printf(“100的16进制数是:%x %n”, 100);

System.out.printf(“100的8进制数是:%o %n”, 100);

System.out.printf(“50元的书打8.5折扣是:%f 元%n”, 50 * 0.85);

System.out.printf(“上面价格的16进制数是:%a %n”, 50 * 0.85);

System.out.printf(“上面价格的指数表示:%e %n”, 50 * 0.85);

System.out.printf(“上面价格的指数和浮点数结果的长度较短的是:%g %n”, 50 * 0.85);

System.out.printf(“上面的折扣是%d%% %n”, 85);

System.out.printf(“字母A的散列码是:%h %n”, ‘A’);

}

复制代码

打印结果

. ____ _ __ _ _

/ / _ __ _ () __ __ _

( ( )___ | '_ | '| | ’ / _` |

/ _)| |)| | | | | || (| | ) ) ) )

’ || .__|| ||| |__, | / / / /

=|_|======|/=////

:: Spring Boot :: (v2.4.7)

2021-09-10 10:42:07 INFO background-preinit org.hibernate.validator.internal.util.Version HV000001: Hibernate Validator 6.1.7.Final

2021-09-10 10:42:07 INFO main PropertiesTest Starting PropertiesTest using Java 1.8.0_202 on xiangyongdeMacBook-Pro.local with PID 46281 (started by xiangyong in /Users/xiangyong/selfProject/project/kmall/kmall-api)

2021-09-10 10:42:07 INFO main PropertiesTest The following profiles are active: test,mptest

_ _ |_ _ |. ___ _ | _

| | |/|)(| | | |)|||

/ |

3.4.1

2021-09-10 10:42:13 INFO main PropertiesTest Started PropertiesTest in 6.755 seconds (JVM running for 8.519)

Hi,王力

Hi,王南:王力.王张

字母a的大写是:A

3>7的结果是:false

100的一半是:50

100的16进制数是:64

100的8进制数是:144

50元的书打8.5折扣是:42.500000 元

上面价格的16进制数是:0x1.54p5

上面价格的指数表示:4.250000e+01

上面价格的指数和浮点数结果的长度较短的是:42.5000

上面的折扣是85%

字母A的散列码是:41

复制代码

更多格式进入参考这里

equals


两个字符串做比较,当然这里比较的话就不得不提老生常谈的问题,==和equals区别

  1. 首先的区别是,equals 是方法,而 == 是操作符;

  2. equals比较的是两个字符串内容而不是引用

  3. ==在比较对象时比较的是引用地址是否相同,在比较基本类型时比较的是其内容

@Test

public void a() {

// s1与s2不是同一个对象

String s1 = new String(“aaa”);

String s2 = new String(“aaa”);

System.out.println(s1 == s2); //false

System.out.println(s1.equals(s2)); //true

// s5与s6是基本数据类型

String s5 = “aaa”;

String s6 = “aaa”;

System.out.println(s5==s6); //true

System.out.println(s5.equals(s6)); //true

//s3和s4是同一个地址的引用

String s3 = new String(“aaa”);

String s4 = s3;

System.out.println(s3==s4); //true

System.out.println(s3.equals(s4)); //true

}

复制代码


和s4是同一个地址的引用

String s3 = new String(“aaa”);

String s4 = s3;

System.out.println(s3==s4); //true

System.out.println(s3.equals(s4)); //true

}

复制代码

[外链图片转存中…(img-g6gHsIrw-1635265971491)]

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/351977.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号