草庐IT

list_of_strings

全部标签

Java String.split 内存泄漏?

我发现使用String.substring会导致与String.split相关的内存问题。使用String.split有内存泄漏吗?如果是,解决方法是什么?以下链接显示了Java中子字符串的正确用法。http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4513622还有一篇博客讨论了子串中可能的MLK。http://nflath.com/2009/07/the-dangers-of-stringsubstring/ 最佳答案 更新:行为在1.7.0_06中发生了变化:请参阅这篇文章:

java - ServletContextListener 严重 : Error configuring application listener of class marktest. 配置

我的Javaservlet似乎在提示找不到包含在包(marktest)中的文件。我正在使用Eclipse(Indigo)和Tomcat7进行开发。这里是错误:SEVERE:Errorconfiguringapplicationlistenerofclassmarktest.Configjava.lang.ClassNotFoundException:marktest.Configatorg.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)atorg.apache.catalin

java - 如何从 RestTemplate postForLocation 获取 STRING 响应?

我正在使用SpringFramework中的RestTemplate在Java中创建一个REST客户端。一切都很好,直到我必须使用postForLocation发帖。我正在访问的网络服务返回一个包含有关POST操作的信息的json。在PHP中很好,但我真的不明白如何在Java中使用RestTemplate。publicStringdoLogin(){Mapargs=newHashMap();args.put("email",AUTH_USER);args.put("token",AUTH_PASS);Stringresult=restTemplate.postForLocation(A

java - 使用 .toString()、String.valueOf() 和 + ""将字符串缓冲区转换为字符串有什么区别

对于以下三种情况,StringBuffer转换为String的主要区别是什么:案例1:使用toString()StringBuffersb=newStringBuffer("Welcome");Stringst=sb.toString();案例2:使用+""StringBuffersb=newStringBuffer("Welcome");Stringst=sb+"";案例3:使用String.valueOf()StringBuffersb=newStringBuffer("Welcome");Stringst=String.valueOf(sb);哪个是在性能方面使用的最佳实践?

java - Java 中 String flyweight 实现的最佳替代方案

我的应用程序是多线程的,具有密集的字符串处理。我们正在经历过多的内存消耗,分析表明这是由于String数据造成的。我认为内存消耗会从使用某种享元模式实现甚至缓存中受益匪浅(我确信字符串经常重复,尽管我没有这方面的任何硬数据)。我看过Java常量池和String.intern,但它似乎会引发一些PermGen问题。在Java中实现应用程序范围内的多线程字符串池的最佳替代方案是什么?编辑:另见我之前的相关问题:Howdoesjavaimplementflyweightpatternforstringunderthehood? 最佳答案

java.lang.ClassFormat错误: Extra bytes at end of class file

当我尝试运行这个程序时,我遇到了一个奇怪的错误。该类可以很好地编译成多个.class文件,我上周(在编辑它之前)编译它就好了。但是现在,我看到了:Exceptioninthread"main"java.lang.ClassFormatError:Extrabytesattheendofclassfileblah/hooplah/fubar/nonsense/IndexId$Transaction根据我的了解,Java6build1.5可以修复它,因为它允许在类文件末尾添加额外的字节(我认为),但我更愿意使用build1.6。我在Windows上编辑,然后通过FTP将.java文件传输到

java - String s1 == String s2 (true) 但 FieldOffset 不同

在学习Java时,我了解到比较2个字符串的正确方法是使用等号而不是“==”。这条线staticStrings1="a";staticStrings2="a";System.out.println(s1==s2);将输出true,因为jvm似乎已经优化了这段代码,因此它们实际上指向相同的地址。我试图用我在这里找到的一篇很棒的帖子来证明这一点http://javapapers.com/core-java/address-of-a-java-object/但是地址好像不一样。我错过了什么?importsun.misc.Unsafe;importjava.lang.reflect.Field;

java - 将 List<Long> 转换为计算出现次数的 Map<Long, Long>

我正在玩Java8,我知道通过阅读文档这一定是可能的,但我只是不知道如何去做。我有以下工作代码:longfactorProduct=LongStream.rangeClosed(1,maxFactor).filter(this::isOptimalFactor).reduce((i,j)->i*j).getAsLong();ListprimeFactors=primeFactors(factorProduct);重要的是我有一个List可能在某些Long上有重复项数。现在我想把它转换成Map以元素作为键,以出现的值作为值。我认为:MapprimeFactorCount=primeFac

java - Jackson JSON - 解码时出现 "no single-String constructor/factory method"错误

最简单的情况给我带来了麻烦。我第一次遇到它。我能够解码稍微复杂的json,但这个简单的失败了。什么会导致这种情况?为什么jackson只用一个字符串就有问题?保存用户角色名称的简单类。publicclassUpdateUserRole{privateStringname;publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}}Controller内部publicvoidupdateUserRole(@PathVariableLongid,@RequestBodyUpdateUser

java - Spring引导,如何将@Valid与List<T>一起使用

我正在尝试对SpringBoot项目进行验证。所以我把@NotNull实体字段的注解。在Controller中,我这样检查:@RequestMapping(value="",method=RequestMethod.POST)publicDataResponseadd(@RequestBody@ValidStatusstatus,BindingResultbindingResult){if(bindingResult.hasErrors()){returnnewDataResponse(false,bindingResult.toString());}statusService.add