utf 8-java string utf8 性能问题

问题描述

java string utf8 性能问题

现在 一个字节数组 b
长度大概在 1mb 之内 , 其中有很多是0xFF这种的字节,大概一半是
通过一下这种方式转为字符串
String str = new String(b,"utf-8")

通过上述形式,转为str过程中,性能下降的厉害, 变为原来的1/3

请问这是为什么呢

解决方案

直接去掉高位,强转看看。

解决方案二:

java中 string类型转换成UTF-8
java String 转utf-8编码

解决方案三:

utf-8是一个char是两个字节

时间: 2024-10-03 14:14:35

utf 8-java string utf8 性能问题的相关文章

Java程序的性能优化StringBuffer与Vector

程序|性能|优化 ? Java使得复杂应用的开发变得相对简单.毫无疑问,它的这种易用性对Java的大范围流行功不可没.然而,这种易用性实际上是一把双刃剑.一个设计良好的Java程序,性能表现往往不如一个同样设计良好的C++程序.在Java程序中,性能问题的大部分原因并不在于Java语言,而是在于程序本身.养成好的代码编写习惯非常重要,比如正确地.巧妙地运用java.lang.String类和java.util.Vector类,它能够显著地提高程序的性能.下面我们就来具体地分析一下这方面的问题.

实例jie如何提高Java Web 服务性能优化实践

本文介绍如何提升 Java Web 服务性能,主要介绍了三种方法:一是采用 Web 服务的异步调用,二是引入 Web 服务批处理模式,三是压缩 SOAP 消息.重点介绍在编程过程中如何使用异步 Web 服务以及异步调用和同步调用的差异点.本文还示范了如何在项目中使用以上三种方法,以及各种方法所适合的应用场景. Java Web 服务简介 Web 服务是一种面向服务架构的技术,通过标准的 Web 协议提供服务,目的是保证不同平台的应用服务可以互操作.Web 服务(Web Service)是基于 X

java 编译-关于java编译及性能相关的问题

问题描述 关于java编译及性能相关的问题 String a = "a"; testDto.setA(a); 和 testDto.setA("a"); 有区别吗? 性能上是不是后者更佳? 解决方案 String a = "a";//多了一个变量a占用的空间 testDto.setA(a); 和 testDto.setA("a");从编译上,这a是常量,直接能够确定传入的参数.少了一次从a去取值的过程 但是既然用java了,这点

lua、groovy嵌入到java中的性能对比(转)

lua和groovy都是可以嵌入到java中的脚本语言.lua以高性能著称,与C/C++在游戏开放中有较多使用,groovy是一个基于Java虚拟机(JVM)的敏捷动态语言,在jvm下有着不错的性能. groovy天生与java有着极高的兼容性,两者间对象无缝存取,支持jsr223.而lua是基于C的,需要调用jni,jni的性能是硬伤.这块网上基本都用luajava,好多年不更新了,不支持jsr223,而且很多方法都没有实现,也不能做到对象无缝存取,比如lua传到java的对象,java用不了

有没有做过Java的UTF-8编码转GBK的方法,高分求

问题描述 有没有做过Java的UTF-8编码转GBK?我遇到一个问题要将UTF-8编码转GBK.在网上一直没有找到,找来找去只找到一个GBK2utf-8方法.大家有没有人写过,请赐教.谢谢高分谢谢首先说下newString(tmp.getBytes("ISO-8859-1"),"UTF-8")或者newString(tmp.getBytes("ISO-8859-1"),"GBK")newString(tmp.getBytes(

Java String、StringBuffer与StringBuilder的区别_java

String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全)  简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象

Java String的常用方法及使用注意事项

一.Java String的常用方法: split()方法: equals()方法: substring()方法: 示例方法: private boolean isSameSelCode(Fbillconfirm fbillconfirm, HashMap outputParam){ String strExpenseID=new String(); Fbillconfirmdetail[] fbillconfirmdetail=fbillconfirm.getFbillconfirmdetai

Java String字符串补0或空格的实现代码_java

废话不多说了,关键代码如下所示: package cn.com.songjy; import java.text.NumberFormat; //Java 中给数字左边补0 public class NumberFormatTest { public static void main(String[] args) { // 待测试数据 int i = 1; // 得到一个NumberFormat的实例 NumberFormat nf = NumberFormat.getInstance(); /

求大神解答关于java string字符串的问题,现有如下要截取,希望按括号分组

问题描述 求大神解答关于java string字符串的问题,现有如下要截取,希望按括号分组 如下字符串:希望每个括号之间的内容分一组变成子字符串,或者输出到文本每个括号之间的内容为一行.丢弃其余的部分 CF --> ('c1,t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t i t