Java 按键时停止读取字符串
如果我有一串垃圾像 这是stackoverflow的属性 我如何读取字符串,直到撇号(或我要设置的键)被点击,它才会返回 这是一个令人惊讶的句子 那么:Java 按键时停止读取字符串,java,android,string,Java,Android,String,如果我有一串垃圾像 这是stackoverflow的属性 我如何读取字符串,直到撇号(或我要设置的键)被点击,它才会返回 这是一个令人惊讶的句子 那么: String desiredString = myString.split("\\.")[0]; 那么: String desiredString = myString.split("\\.")[0]; 您只需要找到字符的第一个索引,然后返回整个字符串(如果找不到),或者返回从字符串开头到(但不包括)字符索引(如果找到)的子字符串 int
String desiredString = myString.split("\\.")[0];
那么:
String desiredString = myString.split("\\.")[0];
您只需要找到字符的第一个索引,然后返回整个字符串(如果找不到),或者返回从字符串开头到(但不包括)字符索引(如果找到)的子字符串
int index = string.indexOf('\'');
return index == -1 ? string : string.substring(0, index);
您只需要找到字符的第一个索引,然后返回整个字符串(如果找不到),或者返回从字符串开头到(但不包括)字符索引(如果找到)的子字符串
int index = string.indexOf('\'');
return index == -1 ? string : string.substring(0, index);
问题在于,即使字符出现在字符串的早期,它也会检查整个字符串。它还编译一个regex
模式
并创建一个不必要的数组。问题是,即使字符出现在字符串的前面,它也会检查整个字符串。它还编译一个regex模式
并创建一个不必要的数组。是否有办法进行偏移,这样它就不会在字符串的前8个字符中查找撇号,但仍会返回整个字符串?因此,在前8个字符中有撇号的字符串将被忽略,而在8个字符之外的撇号将被识别。@尼克:我建议看一下String
的方法。重载indexOf(int ch,int fromIndex)
使用一个字符和一个索引开始查找该字符。因此,indexOf('\'',8)
会按照您的要求执行。是否有一种方法可以进行偏移,这样它就不会查看撇号字符串的前8个字符,但if仍然会返回整个字符串?因此,在前8个字符中有撇号的字符串将被忽略,而在8个字符之外的撇号将被识别。@尼克:我建议看一下String
的方法。重载indexOf(int ch,int fromIndex)
使用一个字符和一个索引开始查找该字符。所以indexOf('\'',8)
会按照您的要求执行。