java 问题 我想输入一句话 并查看某一个字 在这话中有几个

packagejava8;publicclassWork3{Stringinput;//输入的字符Stringwork;//查找的字符intnu=0;//计数器publi... package java8;public class Work3 { String input; //输入的字符 String work; //查找的字符 int nu=0; //计数器 public int counter(String inpit,String work){ String []work1=input.split(""); for (int i = 0; i < work1.length; i++) { if (work1[i].equals(work)) { nu++; } } return nu; }}package java8;import java.util.Scanner;public class work3text { public static void main(String[]args){ Work3 text=new Work3(); Scanner scanner=new Scanner(System.in); System.out.println("请输入字符串"); String input =scanner.next(); System.out.println("请输入要查找的字符"); String work =scanner.next() ; int nu=text.counter(input, work); System.out.println("‘"+input+"’"+"中包含"+nu+"个"+work);}}
这代码有什么问题 求解
展开
 我来答
zhangqi0192
2014-11-05 · TA获得超过2388个赞
知道大有可为答主
回答量:1417
采纳率:0%
帮助的人:1235万
展开全部
错误时报的 空引用 异常 你用一个数组中的元素 .equals(变量) equals方法有个规矩 equals前面的字符串一定不能为空 所以···· 比如说你想在一句话中找有没有我字 请换种写法 "我".equals(arr[i]) 这种写法就保证了前面一定不为空
追问
能具体说明一下吗

改那段
追答
String input; //输入的字符 String work;   //查找的字符 删掉 这两个成员变量没有用  你是通过main方法调用这个类的方法 然后传递的两个参数过来   if (work1[i].equals(work)) {     equals比较的位置互换   work。equals(work【i】)   然后在main方法中 做判断  if(work!=null){int nu=text.counter(input, work); syso(xxx)}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式