类型的方法,以及关于Stringbuffer和String builder的相关补充
xxxValue() 方法用于将 Number 对象转换为 xxx 数据类型的值并返回。
相关的方法有:
类型 | 方法及描述 |
---|---|
byte |
byteValue() : 以 byte 形式返回指定的数值。 |
abstract double |
doubleValue() : 以 double 形式返回指定的数值。 |
abstract float |
floatValue() : 以 float 形式返回指定的数值。 |
abstract int |
intValue() : 以 int 形式返回指定的数值。 |
abstract long |
longValue() : 以 long 形式返回指定的数值。 |
short |
shortValue() : 以 short 形式返回指定的数值。 |
参数
以上各函数不接受任何的参数。
返回值
转换为 xxx 类型后该对象表示的数值。
实例
Test.java 文件
public static void main(String args[]){
Integer x = 5;
// 返回 byte 原生数据类型
System.out.println( x.byteValue() );
// 返回 double 原生数据类型
System.out.println(x.doubleValue());
// 返回 long 原生数据类型
System.out.println( x.longValue() );
}
}
编译以上程序,输出结果为:
5 5.0 5
java 在编译 Integer i1 = 127 时,会翻译成 Integer i1 = Integer.valueOf(127)。
JAVA 中的 StringBuilder 和 StringBuffer 适用的场景是什么?
最简单的回答是,stringbuffer 基本没有适用场景,你应该在所有的情况下选择使用 stringbuiler,除非你真的遇到了一个需要线程安全的场景,如果遇到了,请务必在这里留言通知我。
然后,补充一点,关于线程安全,即使你真的遇到了这样的场景,很不幸的是,恐怕你仍然有 99.99....99% 的情况下没有必要选择 stringbuffer,因为 stringbuffer 的线程安全,仅仅是保证 jvm 不抛出异常顺利的往下执行而已,它可不保证逻辑正确和调用顺序正确。大多数时候,我们需要的不仅仅是线程安全,而是锁。
最后,为什么会有 stringbuffer 的存在,如果真的没有价值,为什么 jdk 会提供这个类?答案太简单了,因为最早是没有 stringbuilder 的,sun 的人不知处于何种愚蠢的考虑,决定让 stringbuffer 是线程安全的,然后大约 10 年之后,人们终于意识到这是一个多么愚蠢的决定,意识到在这 10 年之中这个愚蠢的决定为 java 运行速度慢这样的流言贡献了多大的力量,于是,在 jdk1.5 的时候,终于决定提供一个非线程安全的 stringbuffer 实现,并命名为 stringbuilder。顺便,javac 好像大概也是从这个版本开始,把所有用加号连接的 string 运算都隐式的改写成 stringbuilder,也就是说,从 jdk1.5 开始,用加号拼接字符串已经没有任何性能损失了。
如诸多评论所指出的,我上面说,"用加号拼接字符串已经没有任何性能损失了"并不严谨,严格的说,如果没有循环的情况下,单行用加号拼接字符串是没有性能损失的,java 编译器会隐式的替换成 stringbuilder,但在有循环的情况下,编译器没法做到足够智能的替换,仍然会有不必要的性能损耗,因此,用循环拼接字符串的时候,还是老老实实的用 stringbuilder 吧。
转载于:https://www.cnblogs.com/xuyinyin/p/10863052.html
类型的方法,以及关于Stringbuffer和String builder的相关补充相关推荐
- java把string转int类型_java把String类型转换为int类型的方法
java把String类型转换为int类型的方法 发布时间:2020-08-20 14:32:03 来源:亿速云 阅读:73 作者:小新 这篇文章将为大家详细讲解有关java把String类型转换为i ...
- python 容器类型_Python容器类型公共方法总结
以下公共方法支持列表,元组,字典,字符串. 内置函数 Python 包含了以下内置函数: 函数 描述 备注 len(item) 计算容器中元素个数 del(item) 删除变量 del 有两种方式 m ...
- pythonrandint函数左闭右开_Python容器类型公共方法总结
以下公共方法支持列表,元组,字典,字符串. 内置函数 Python 包含了以下内置函数: 函数 描述 备注 len(item) 计算容器中元素个数 del(item) 删除变量 del 有两种方式 m ...
- 【JAVA中String类的相关知识】
文章目录 一.创建字符串 1.1创建字符串时的内存布局 二.字符串比较相等 2.1equals方法 三.字符串常量池 3.1实例化操作的内存布局 3.2intern手动入池 四.理解字符串不可变 4. ...
- String类型的方法
1.String类概述 · 字符串是由多个字符组成的一串数据(字符序列),也可以看成是一个字符数组. · 字符串字符值"abc"也可以看成是一个字符串对象. · 字符串是常量 ...
- java的布尔类型转换_java string类型转换boolean类型的方法
下面小编就为大家带来一篇java string类型转换boolean类型的方法.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 今天偶然想把string 类型转换成 bo ...
- java中StringBuffer和String类型的转换
01 String转StringBuffer 第一种 StringBuffer()构造方法 第二种方法 通过append() 01 StringBuffer转String 第一种 String构造方法 ...
- java中三种转string的方法_java中int,char,string三种类型的相互转换
如何将字串 String 转换成整数 int? int i = Integer.valueOf(my_str).intValue(); int i=Integer.parseInt(str); 如何将 ...
- C#语言之“string格式的日期时间字符串转为DateTime类型”的方法
方法一:Convert.ToDateTime(string) string格式有要求,必须是yyyy-MM-dd hh:mm:ss ================================== ...
最新文章
- could not open parameter file init**.ora
- 外媒评出中国最美20个景点
- 设置builder.max_workspace_size的意义
- 七夕出手,这本情话秘籍请收好
- 代码片段:基于 JDK 8 time包的时间工具类 TimeUtil
- Qt 人类可读大小 quint64字节转可读字符串 “1.1 GB“
- 思科ASDM导入与实战配置经验总结-操作系统版本V842
- python实现QQ自动发送信息
- 凝胶渗透色谱的基本概念(一)
- php免费人机验证,Antiboter是一个界面漂亮且方便使用的PHP后台的图片人机验证
- 大众碰到点评的一个字体反爬,落地技术也是绝了
- 运算器和控制器构成了微型计算机的主机,运算器和控制器构成了微型计算机的主机...
- 苹果高管公然“开怼”:三星抄袭 iPhone,只加了个大屏
- Faiss(16):编译时添加对AVX512指令的支持
- can总线短距离不用双绞线_CAN 总线(一) 物理层—屏蔽双绞线
- MySQL 关于模糊查找
- OkHttp3封装第二版
- C# 将Base64转换为图片并保存到Image数组
- python安装第三方库(包)时显示warning黄颜色的报错解决方法
- 大泉州人才网(整站)程序 免维护 V1.0