Tag: 字符串

在字符串文字上调用equals

我只是整理了我的代码并且有这篇文章: String saving = getValue(); if(saving != null && saving.equals(“true”)){ // do something } 然后我想到了另一种方法来摆脱对null的检查: if(“true”.equals(saving)){ // do something } 它确实有效,但这样做是否安全 ? 我的意思是字符串文字存储在公共池中,而由new创建的字符串对象存储在堆上。 但是常量池中的字符串也是对象,对吧? 但即使它使代码更短,它似乎也不是正确的做法。

在Java中构建字符串是否有“最快的方法”?

我通常用以下方式在Java中创建一个String: String foo =“123456”; 但是,我的讲师坚持要求我使用format方法形成一个String,如下所示: String foo = String.format(“%s”,123456); 要快得多。 此外,他说使用StringBuilder类更快。 StringBuilder sb = new StringBuilder(); String foo = sb.append(String.format(“%s”,123456))。toString(); 创建String的最快方法是哪一个, 如果有的话 ? 它们不可能100%准确,因为我可能不会完全记住它们。

为什么说Java的字符串内存使用率很高?

在这篇博客文章中 ,据说String的最小内存使用量是: 8 * (int) ((((no chars) * 2) + 45) / 8)字节。 因此对于字符串“Apple Computers”,最小内存使用量为72字节。 即使我有10,000个长度为两倍的String对象,内存使用量也会小于2Mb,这根本不算多少。 那么这是否意味着我低估了企业应用程序中存在的字符串数量,或者该公式是错误的? 谢谢

用于java的String.matches方法的正则表达式?

基本上我的问题是这个,为什么: String word = “unauthenticated”; word.matches(“[az]”); 归还假吗? (在java1.6中开发) 基本上我想看看传递给我的字符串是否有alpha字符。

Java相当于Python的格式()

这是进行字符串替换的两种方法: name = “Tshepang” “my name is {}”.format(name) “my name is ” + name 如何使用Java执行与第一种方法类似的操作?

如何在Java中将字节数组转换为String?

如何在不转换的情况下将bytes数组转换为String ? 我试过了: String doc=new String( bytes); 但doc文件与字节不同(字节是二进制信息 )。 例如: String doc=new String( bytes); byte[] bytes2=doc.getBytes(); bytes和bytes2是不同的。 PS:UTF-8不起作用,因为它转换了不同值的一些字节。 我测试过它不起作用。 PS2:不,我不想要BASE64 。

Java – 全名的正则表达式

如何validation正则表达式的全名? 我只想要字母表(没有数字),只需要正则表达式的空格。 这是我到目前为止所做的。 你能帮我修一下这个正则表达式吗? 非常感谢你 public static boolean isFullname(String str) { boolean isValid = false; String expression = “^[a-zA-Z][ ]*$”; //I know this one is wrong for sure >,< CharSequence inputStr = str; Pattern pattern = Pattern.compile(expression, Pattern.CASE_INSENSITIVE); Matcher matcher = pattern.matcher(inputStr); if (matcher.matches()) { isValid = true; } return isValid; }

如何将变量增加到字母表中的下一个或上一个字母?

我在变量字符串中定义了大写字母,我想输出字母表中的下一个和前一个字母。 例如,如果变量等于’C’ ,我想输出’B’和’D’ 。

查找java中字符串中字符频率的有效方法:O(n)

在最近的一次采访中,我被要求写下面的程序。 找出给定字符串中频率最小的字符? 所以我尝试通过使用charAt迭代字符串并将字符作为键存储在HashMap中,并将出现次数作为其值。 现在,我必须迭代Map以找到最低元素。 是否有一种更有效的方法来做到这一点,显然上面的一个太强烈了我猜。 更新和另一种解决方案 经过一些思考过程和答案后,我认为最好的时间是O(n)。 在第一次迭代中,我们将不得不逐个字符地迭代字符串,然后将它们的频率存储在特定位置的数组中(字符是一个int),同时有两个临时变量,它们保持最少的计数和相应的字符。因此,当我转到下一个字符并将其频率存储在arr [char] = arr [char] +1中;同时我将检查temp varible是否具有大于此值的值,如果是,那么temp变量将是这个值,而char也将是这一个。这样我认为我们不需要第二次迭代来找到最小的并且也不需要排序我猜 …. Wat说? 或者更多解决方案

从Java中的字符串中删除第一个单词

从Java中的字符串中删除第一个单词的最佳方法是什么? 如果我有 String originalString = “This is a string”; 我想从中删除第一个单词,实际上形成两个字符串 – removedWord = “This” originalString = “is a string;