new String()与toString
2024-10-17 01:13:10
str.toString是调用了str这个object对象的类的toString方法。一般是返回这么一个String:[class name]@[hashCode]。
new String(str)是根据parameter是一个字节数组,使用java虚拟机默认的编码格式,将这个字节数组decode为对应的字符。若虚拟机默认的编码格式是ISO-8859-1,按照ascii编码表即可得到字节对应的字符。
byte[] b = {'a','b','c'};
System.out.println(b.toString());
System.out.println(new String(b));
第一个得到的是[B@15db9742,第二个返回abc
toString 若未重写,在object类中,返回一个字符串,该字符串由类名(对象是该类的一个实例)、“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
toString默认返回当前对象得内存地址,new String()是返回一个真实的值
所以,
new String()在字符转码时用,比如字符的加密解密等等;
最新文章
- node npm 安装模块 淘宝镜像
- C#异步:实现一个最简单的异步
- YUV格式&;像素
- java.lang.NullPointerException
- UOJ35 后缀数组(模板)
- Java中堆和栈的区别(转)
- [Bootstrap] 4. Typogrphy
- 【ArcGIS 10.2新特性】ArcGIS 10.2 for Desktop 新特性(二)
- 一个由proguard与fastJson引起的血案(转)
- 怎样在linux或者Unix上检查端口是否在使用
- ConstraintLayout知识记录
- Unity3D学习笔记(二)Unity的JavaScript基础
- springboot~thymeleaf页面布局的步骤
- Shell命令-文件及内容处理之iconv、dos2unix
- centos安装mariadb
- NOIP2008双栈排序(贪心)
- github文档
- sql语句start with connect by prior语法解析
- SpringMVC之单/多文件上传
- mysql / sqlserver / oracle 常见数据库分页