输入客串,直到输入exit结束,哪里错了啊?
importjava.util.*;publicclassapp{publicstaticvoidmain(String[]args){finalintN=20;Scan...
import java.util.*;
public class app
{
public static void main(String[] args)
{
final int N=20;
Scanner read=new Scanner(System.in);
String[] s=new String[N];
int i;
i=0;
do
{
s[i++]=read.next();
}while(s[i-1]!="exit");
s[--i]=null;
for(i=0;s[i]!=null;i++)
System.out.println(s[i]);
}
} 展开
public class app
{
public static void main(String[] args)
{
final int N=20;
Scanner read=new Scanner(System.in);
String[] s=new String[N];
int i;
i=0;
do
{
s[i++]=read.next();
}while(s[i-1]!="exit");
s[--i]=null;
for(i=0;s[i]!=null;i++)
System.out.println(s[i]);
}
} 展开
1个回答
展开全部
字符串是否是指定字符串的判断不能用== 和!=
要用equals()方法
while (s[i - 1].equals("exit"));这里要改成这么写
要用equals()方法
while (s[i - 1].equals("exit"));这里要改成这么写
更多追问追答
追问
public class app
{
public static void main(String[] args)
{
String a="abc";
String b="abcd";
if(a!=b)
System.out.print("YES");
}
}
我这样都可以啊
追答
对象是引用类型,不能用== 和!= 来判断的
==和!= 是用来判断原生数据类型的
你给的代码之所以能看似正常的运行,是因为你使用的字面量声明字符串,如果你把代码该成
String a = new String("abc");这种写法,就无效了,这个涉及到更底层的字符串类型的设计,我就不解释了,解释起来要写个几万字呢
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询