java,找出指定字符在字符串中出现的次数
importjava.util.Scanner;publicclasstimes{publicstaticvoidmain(String[]args){Scannerin...
import java.util.Scanner;
public class times {
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
System.out.println("enter a string and a char:");
String str=input.nextLine();
String str2=input.nextLine();
char a= str2.charAt(0);
int countnumber=0;
int i=0;
while(i<str.length())
{
if(str.charAt(i).equals.(a));
countnumber++;
i++;
}
System.out.println(countnumber);
}
}
其中equals的用法好像有错,麻烦哪位大神给我改一下。给我一个正确的程序。 展开
public class times {
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
System.out.println("enter a string and a char:");
String str=input.nextLine();
String str2=input.nextLine();
char a= str2.charAt(0);
int countnumber=0;
int i=0;
while(i<str.length())
{
if(str.charAt(i).equals.(a));
countnumber++;
i++;
}
System.out.println(countnumber);
}
}
其中equals的用法好像有错,麻烦哪位大神给我改一下。给我一个正确的程序。 展开
展开全部
//你的代码写的一踏糊涂 我重新帮你写了段 希望你能采纳 不懂可以问
// 入口类
public class p1
{
public static void main(String[] args)
{
p2 p=new p2();
p.jj();
}
}
//逻辑代码类
public class p2
{
int a=0;
public void jj()
{
Tools t=new Tools();
t.output("请输入一个字符串:");
String name=t.inputString();
t.output("请输入要查找的字符:");
String hg=t.inputString();
int cishu=gg(name,hg);
t.output("“"+name+"”"+"中包含"+cishu+"个"+hg);
}
public int gg(String name,String hg)
{
for(;;)
{
int kl=name.indexOf(hg);
if(kl>=0)
{
kl++;
name=name.substring(kl);
a++;
}
else
{
break;
}
}
return a;
}
}
//工具类 好比scanner 类
import java.util.*;
public class Tools
{
public String inputString()
{
Scanner scanner = new Scanner(System.in);
String s= scanner.next();
return s;
}
public int inputInt()
{
Scanner scanner = new Scanner(System.in);
int s= scanner.nextInt();
return s;
}
public double inputDouble()
{
Scanner scanner = new Scanner(System.in);
double s= scanner.nextDouble();
return s;
}
public void output(String s)
{
System.out.print(s);
}
}
// 入口类
public class p1
{
public static void main(String[] args)
{
p2 p=new p2();
p.jj();
}
}
//逻辑代码类
public class p2
{
int a=0;
public void jj()
{
Tools t=new Tools();
t.output("请输入一个字符串:");
String name=t.inputString();
t.output("请输入要查找的字符:");
String hg=t.inputString();
int cishu=gg(name,hg);
t.output("“"+name+"”"+"中包含"+cishu+"个"+hg);
}
public int gg(String name,String hg)
{
for(;;)
{
int kl=name.indexOf(hg);
if(kl>=0)
{
kl++;
name=name.substring(kl);
a++;
}
else
{
break;
}
}
return a;
}
}
//工具类 好比scanner 类
import java.util.*;
public class Tools
{
public String inputString()
{
Scanner scanner = new Scanner(System.in);
String s= scanner.next();
return s;
}
public int inputInt()
{
Scanner scanner = new Scanner(System.in);
int s= scanner.nextInt();
return s;
}
public double inputDouble()
{
Scanner scanner = new Scanner(System.in);
double s= scanner.nextDouble();
return s;
}
public void output(String s)
{
System.out.print(s);
}
}
追问
看不懂。。。
我们书上要求用
public static int[] count(String s)这个方法~~
追答
这段代码是用面向对象的最简单思想写的 所有看上去有点复杂
这个工具类定的是有点啰嗦不过 你需要明白他的思想 你主要看我的逻辑代码类
里面不是有public int gg(String name,String hg)这个方法吗 我是传递的两个参数 一个输入的字符串 一个要查找的字符串 其实你也只要看这个方法里面的for循环就可以了
算了 我写个没有工具类的给你看吧
import java.util.*;
public class Demo
{
public static void main(String[] args)
{
Scanner scanner =new Scanner (System.in);
System.out.print("请输入一段字符串");
String s= scanner .next();
System.out.print("请输入你需要查找的字符串");
String h =scanner .next();
Demo1 a=new Demo1();
int x=a.b(s,h);
System.out.print(s+"包含"+x+"个"+h);
}
}
public class Demo1
{
int x =0;
public int b(String s, String h)
{
for(;;)
{
int a=s.indexOf(h);
if(a>=0)
{
a++;
s=s.substring(a);
x++;
}
else
{
break;
}
}
return x;
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询