Java 比较字符串方法
我想比较字符串,但下面的代码不起作用。我猜是因为不兼容,还有其他方法吗?谢谢Java 比较字符串方法,java,string,Java,String,我想比较字符串,但下面的代码不起作用。我猜是因为不兼容,还有其他方法吗?谢谢 public class test { public static void main(String[] args) { String str1 = "abc def ghi abc ded abc ghi"; String str2 = "ghi"; int count = 0; String array[] = str1.split(
public class test
{
public static void main(String[] args)
{
String str1 = "abc def ghi abc ded abc ghi";
String str2 = "ghi";
int count = 0;
String array[] = str1.split("\t");
for(int i = 0; i < array.length; i++)
{
if(array[i].equals(str2))
{
count++;
System.out.println(array[i]);
System.out.println(count);
}
}//for
}//main
}//test
公共类测试
{
公共静态void main(字符串[]args)
{
字符串str1=“abc def ghi abc ded abc ghi”;
字符串str2=“ghi”;
整数计数=0;
字符串数组[]=str1.split(“\t”);
for(int i=0;i
看起来您要在“\t”
(选项卡)上拆分,但您的字符串是”
(空格)分隔的。尝试字符串array[]=str1.split(“”)代码>代替。不要使用“\t”
,而是使用
”,它就可以工作了。
“\t”
只有在使用了“选项卡”
而不是空格时才有用。
现在试试这个
public class T
{
public static void main(String[] args)
{
String str1 = "abc def ghi abc ded abc ghi";
String str2 = "ghi";
int count = 0;
String array[] = str1.split(" ");
for(int i = 0; i < array.length; i++)
{
if(array[i].equals(str2))
{
count++;
System.out.println(array[i]);
System.out.println(count);
}
}//for
}//main
}//test
公共类T
{
公共静态void main(字符串[]args)
{
字符串str1=“abc def ghi abc ded abc ghi”;
字符串str2=“ghi”;
整数计数=0;
字符串数组[]=str1.split(“”);
for(int i=0;i
字符串包含一种方法,它有助于找出项目的发生情况。
就你而言
如果不想使用split,也可以使用StringTokenizer类。我觉得这很有用。您可以像这样为每个字符串创建一个StringTokenizer
StringTokenizer st1=新的StringTokenizer(str1,“”)代码>
str1后面的“”指示要解析的对象。所以,如果你想用逗号、破折号、数字、字母、任何东西来解析,就把它放在那里吧
然后根据找到的令牌数创建一个数组,如下所示:
String[] array1 = new String[st1.countTokens()];
for(int i=0;i<st1.countTokens();i++)
{
array1[i]=st1.nextToken();
}
按如下方式填充数组:
String[] array1 = new String[st1.countTokens()];
for(int i=0;i<st1.countTokens();i++)
{
array1[i]=st1.nextToken();
}
for(int i=0;i除非每个单词之间都有一个制表符,否则请使用split(“”)
,因为您希望在字符串的空白处而不是在制表符处拆分字符串