【java中常见的字符串API】教程文章相关的互联网学习教程文章

java-如何设置验证字符串大小= 0或最小= 5,最大= 10?【代码】

我需要对String字段的输入进行设置验证.此字段应为空或5到10个字符.但是,如果我这样设置验证:@Size(min=5, max=10) private String couponCode;值为空时,不会通过@Valid.我该如何实现?解决方法:您可以设置模式以接受空白值或5到10个字符:@Pattern(regexp = "|.{5,10}") private String couponCode;在此,如果匹配了空字符串或.{5,10}模式,则使用| |来告诉验证器认为传递的值有效. 如果您将空白值视为空字符串,请使用以下模式:@P...

java-以位为单位的文件的0和1的字符串【代码】

我正在研究Huffman Java应用程序,我快完成了.我有一个问题.我需要将类似“ 101011101010”的字符串保存到文件中.当我用当前代码保存它时,它会将其保存为每个0或1占用1个字节的字符.我很确定可以将每个0/1都保存一次. 我已经使用BitSet和Integer.valueOf尝试了一些操作,但无法使它们工作.这是我当前的代码:FileOutputStream fos = new FileOutputStream("encoded.bin"); fos.write(encoded.getBytes()); fos.close();其中“已编码”...

如何使用gson将此json字符串转换为普通的java arraylist【代码】

我试图将以下JSON字符串转换为Array并收到以下错误:Exception in thread “AWT-EventQueue-0” java.lang.NoClassDefFoundError:org/apache/commons/logging/LogFactory atnet.sf.json.AbstractJSON.(AbstractJSON.java:54) atnet.sf.json.util.CycleDetectionStrategy.(CycleDetect??ionStrategy.java:36)at net.sf.json.JsonConfig.(JsonConfig.java:65) atnet.sf.json.JSONSerializer.toJSON(JSONSerializer.java:84)JSON:[ ...

有关Java字符串的一些知识【代码】

字符串实现 String内部由字符数组实现,不同于一般的字符数组,每个String都是由一个特殊字符\0结尾的 属性 private final char[] value;//一个final类型的字符数组,用于存储字符串的内容。从final的关键字可以看出,String的内容一旦被初始化后,是不能再更改的。 private int hash;//用于存储当前字符串的hash码 构造方法 传入字符串构造一个新的字符串 public String(String original) {this.value = original.value;//新创建的...

java-无法在artff文件weka中使用字符串属性并构建分类器【代码】

嗨,我正在使用Weka进行机器学习,我的artff文件格式如下`@relation datastest@attribute fwoh {what, when, where, how, who, why} @attribute parameter {color, performance} @attribute object { power, cost} @attribute model {x,y,z} @attribute question String`我尝试使用J48,PART,DecisionTable,ZeroR和SMO,在构建分类器时,所有分类器都将我置于异常之下.weka.core.UnsupportedAttributeTypeException: weka.classifiers.r...

以字符串形式编译Java代码【代码】

我在String中编写了一个简单的Java代码,想在程序运行时动态执行,以下是我的代码:import java.io.File; import java.io.IOException; import java.lang.reflect.Method; import java.net.URL; import java.net.URLClassLoader; import java.nio.charset.StandardCharsets; import java.nio.file.Files;import javax.tools.JavaCompiler; import javax.tools.ToolProvider;public class CompliedClass {public static void main(Str...

java-将时间值为“ 0:00”的字符串转换为十进制/双精度值?【代码】

我试图从表中检索数据并将其转换为双精度值以便对其进行图形化处理.第0列用“ 00:00”格式的时间值填充,第1列用十进制值填充. 使用此代码,我似乎已经正确检索了数据并将第1列的内容转换为double值,但是不知道如何将带有时间值的String转换为double值以表示小时数:int row = tableRadio.getRowCount();for (int r = 0; r < row; r++) {double r2 = Double.parseDouble( tableModel.getValueAt(r, 0).toString() );double r3 = Dou...

Java使用正则表达式在字符串中查找值【代码】

我想知道在Java中使用匹配器的行为. 我有一个已编译的模式,当运行匹配器的结果时,我不明白为什么缺少特定值. 我的代码:String str = "star wars"; Pattern p = Pattern.compile("star war|Star War|Starwars|star wars|star wars|pirates of the caribbean|long strage trip|drone|snatched (2017)"); Matcher matcher = p.matcher(str); while (matcher.find()) {System.out.println("\nRegex : " matcher.group());}我受到“星球...

java-使用字符串格式化程序引发SonarQube问题【代码】

SonarQube对我的字符串格式化程序的使用提出了一个问题:Format specifiers should be used instead of string concatenation.我在下面的Java代码中使用了填充数字0.int paddingLength = seqLength - seqNoLength; String.format("%0" + paddingLength + "d", seqNo);解决方法:引发此问题是因为您要将串联的字符串传递给格式化程序.如果要使用字符串格式,请使用字符串格式:int paddingLength = seqLength - seqNoLength; String f...

Java通过字节分割字符串【代码】

一、题目描述:一道Java笔试题。将字符串按给定的字节数进行分割,输出分割后的字符串。要求汉字不能进行拆分,如“a中国”不能拆分成“a+中的一半”。 二、解题思路:首先利用String类的substring函数逐一取出字符,然后可以通过将字符转换为字节数组,判断大小并累加至计数器,如满足条件则输出并将计数条件归空。 三、代码:public class Test{public static void main(String[] args) {/*思路:利用String类中的substring方法逐...

超过65535字节的Java字符串文字的字节码

我一直在从各种文件中读取Java字节码,以帮助我理解该项目的.class文件,在该项目中,我需要与没有源代码且文档不多的第三方库集成. 出于我自己的娱乐,我在我的maven存储库中运行了Apache BCEL库,以查看在哪里使用了稀有的类和方法属性,例如类型注释,以及原因. 我偶然发现了一个特定的jar的问题,该jar无法解码常量字段之一-特别是CONSTANT_Utf8_info.该库是icu4j-2.6.1.jar(com.ibm.icu:icu4j),特别是LocaleElements_zh__PINYIN.class...

java-使用参数更新字符串【代码】

我在Java 8中使用Spring. 我有一个带有参数的字符串,我不确定应该如何通过参数列表更新参数.String message = "Today is {0} and {1} is happy";List<String> params = Arrays.asList("Sunday", "Uri", "Dan");我想知道我应该使用哪个运算符来获取:String newMessage = "Today is Sunday and Uri is happy.";谢谢解决方法:尽管您对自己的确切要求有准确的答案.但是MessageFormat非常危险,并且在必须重复值替换的地方不够灵活.因此...

Java中是否存在具有固定哈希长度的字符串的现成双向哈希函数?【代码】

我需要对字符串使用哈希和增强(双向)功能.哈希值应为固定长度(5-6个符号). 例:String hashed = MagicHashLib.hash("long string"); //hash is hd45dk as an example String enhashedLongString = MagicHashLib.enhash(hash);Java中是否已经存在已实现的算法?还是我应该自己写?解决方法:无论编程语言如何,我都不认为存在此类哈希. 以下是hash function wikipedia page的报价:A hash function is any function that can be used ...

如何使用Java 8流考虑分割字符串的第一个标记【代码】

我还是java 8的新手,我想转换这样的循环://result is List<String> for(String elem:result) {if(elem.contains(".")) {elem = elem.split("\\.")[0];} }Java 8流样式..我怎么能做到这一点? 到目前为止我尝试过的是:result.stream().map(String::split("\\.")[0]);但是它给出了编译错误,而且我也不知道如何处理这种情况解决方法:不要为每个元素编译一个模式(通过拆分),而是在循环之前创建它.同样,您似乎希望得到一个新的列表,大...

java-返回字符串“ hi”出现在给定字符串中任何位置的次数【代码】

我编写了以下Java代码,它返回了超时错误.我不确定这意味着什么,也不知道为什么代码无法运行public int countHi(String str) {int pos = str.indexOf("hi"); int count = 0;while(pos!=-1){count++;pos = str.substring(pos).indexOf("hi");}return count; }我知道一个替代解决方案,使用for循环,但我真的认为这也可以.解决方法:您进入了无限循环,因为pos永远不会超过第一个匹配项,因为第一个匹配项将包含在子字符串中. 您可以在whil...