如何在Java中比较参数和对象?
有人知道如何将参数与对象进行比较吗?我一直试图按照最后一个问题中给出的说明来做:但是,似乎不起作用如何在Java中比较参数和对象?,java,class,object,parameters,compare,Java,Class,Object,Parameters,Compare,有人知道如何将参数与对象进行比较吗?我一直试图按照最后一个问题中给出的说明来做:但是,似乎不起作用 public class Classification { String changes; String rating; String description; Classification() { rating = "G"; description = "Suitable for gener
public class Classification
{
String changes;
String rating;
String description;
Classification()
{
rating = "G";
description = "Suitable for general audiences";
}
Classification(String must)
{
if(must != "G" || must!= "PG" || must!="M")
{
throw new NullPointerException ("Not equal");
}
rating = must;
if(rating == "G")
{
description = "Suitable for general audiences";
}
if(rating == "PG")
{
description = "Parental guidance recommended";
}
if(rating == "M")
{
description = "Suitable for mature audiences";
}
}
Classification (int num, String para)
{
if(num!= 13 || num!= 15 || num!=16 || num!=18)
{
throw new IllegalArgumentException("Not equal");
}
if(para==null)
{
throw new NullPointerException("String is null");
}
if(num == 16)
{
rating = "R";
description = para;
}
changes = rating + num;
}
void printClassification()
{
print("Rated " + rating + ": " + description);
}
void derestrict()
{
if(rating == "M")
{
rating = "PG";
}
if(rating == "PG")
{
rating = "G";
}
if(rating == "G")
{
throw new IllegalArgumentException("G is least restrictive");
}
if(changes == "R18")
{
changes = "R16";
}
if(changes == "R15")
{
changes = "R13";
}
}
Classification isLessRestrictive(Classification compare)
{
if(compare==null)
{
throw new NullPointerException ("Classification para is null");
}
if(changes<compare)
{
return true;
}
return false;
}
}
公共类分类
{
字符串更改;
串级;
字符串描述;
分类()
{
评级=“G”;
description=“适合一般观众”;
}
分类(字符串必须)
{
如果(必须!=“G”|必须!=“PG”|必须!=“M”)
{
抛出新的NullPointerException(“不相等”);
}
评级=必须;
如果(评级=“G”)
{
description=“适合一般观众”;
}
如果(评级=“PG”)
{
description=“推荐家长指导”;
}
如果(评级=“M”)
{
description=“适合成熟观众”;
}
}
分类(int num,String para)
{
如果(num!=13 | | num!=15 | | num!=16 | | num!=18)
{
抛出新的IllegalArgumentException(“不相等”);
}
if(para==null)
{
抛出新的NullPointerException(“字符串为null”);
}
如果(num==16)
{
评级=“R”;
描述=段落;
}
变化=评级+数量;
}
无效印刷品分类()
{
打印(“额定”+额定+”:“+说明);
}
无效解除限制()
{
如果(评级=“M”)
{
评级=“PG”;
}
如果(评级=“PG”)
{
评级=“G”;
}
如果(评级=“G”)
{
抛出新的IllegalArgumentException(“G是限制最少的”);
}
如果(变化=“R18”)
{
更改=“R16”;
}
如果(变化=“R15”)
{
更改=“R13”;
}
}
分类无限制(分类比较)
{
if(比较==null)
{
抛出新的NullPointerException(“分类参数为null”);
}
如果在Java中比较String
s时(更改),则需要使用equals()
比如说,
if(must != "G" || must!= "PG" || must!="M")
应该是
if(!"G".equals(must) || !"PG".equals(must) || !"M".equals(must))
及
看起来是这样的:
if("G".equals(rating))
“参数”和“对象”之间有什么区别?不要吹毛求疵,因为它不会影响答案,但是如果(“G”.equals(rating))
更安全,因为评级可以为空。@Radiodef-Mmm,说得好。我将更改答案。
if("G".equals(rating))