Java中用switch构造数组_javase(四舍五入、switch、length、构造器、重载与重写)...
发布日期:2021-06-24 11:24:10 浏览次数:2 分类:技术文章

本文共 1912 字,大约阅读时间需要 6 分钟。

1、四舍五入

public static voidmain(String args[]){

System.out.println(Math.round(11.5));

System.out.println(Math.round(-11.5));

}

Math.round(11.5)的返回值是12,Math.round(-11.5)的返回值是-11,四舍五入的原理是在参数上加0.5然后进行下取整。

2、swtich 是否能作用在byte 上,是否能作用在long 上,是否能作用在String上

(1)jdk版本的发展与switch的更改:

早期的JDK中,switch(expr)中,expr可以是byte、short、char、int

1.5版开始,Java中引入了枚举类型(enum),expr也可以是枚举

从JDK 1.7版开始,还可以是字符串(String),长整型(long)是不可以的

(2)测试jdk1.8版本的switch:

字符串:

public static voidmain(String args[]) {

{

String string;

Scanner reader= newScanner(System.in);

System.out.println("输入字符串");

string=reader.next();switch(string) {case "monday":

System.out.println("星期一");break;case "tuesday":

System.out.println("星期二");break;case "wednesday":

System.out.println("星期三");break;case "thursday":

System.out.println("星期四");break;

}

}

}

输入字符串

monday

星期一

长整型:

当把switch中改为long型的数据时,报错:

8c86c06effe6f5c7cbf6925f858174b1.png

3、数组与字符串得length

public static voidmain(String args[]) {int[] arr=new int[50];

String string="123456";

System.out.println(arr.length);

System.out.println(string.length());

}

数组中的length为数组的属性,字符串中的length为length()方法,然而,JavaScript中,获得字符串的长度是通过length属性得到的,这一点容易和Java混淆。

4、构造器是否可以被重写?

public classTest {privateString name;privateString age;publicTest(String name, String age) {this.name =name;this.age =age;

}publicTest(String name) {this.name =name;

}publicTest(){

}

}

(1)构造器可以被重载,但是不能被重写,子类调用父类的

(2)子类继承父类所有的成员变量和成员方法,但不继承父类的构造方法。在子类的构造方法中可使用语句super(参数列表)调用父类的构造方法。一个构造方法调用本类的其它构造方法用this关键字。

5、重载和重写

(1)重载和重写的区别:

重载:

重载(overloading) 是在一个类里面,方法名字相同,而参数列表不同。返回类型可以相同也可以不同。最常用的地方就是构造器的重载。

被重载的方法必须改变参数列表(参数个数或类型不一样);

被重载的方法可以改变返回类型,因此无法以返回值类型作为重载函数的区分标准。

被重载的方法可以改变访问修饰符;

被重载的方法可以声明新的或更广的检查异常;

05905ded995ba194cd0a35edf8dfdf58.png

重写:

重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。重写的好处在于子类可以根据需要,定义特定于自己的行为。也就是说子类能够根据需要实现父类的方法。

参数列表必须完全与被重写方法的相同。

返回类型与被重写方法的返回类型可以不相同

访问权限不能比父类中被重写的方法的访问权限更低。例如:如果父类的一个方法被声明为 public,那么在子类中重写该方法就不能声明为 protected。

父类的成员方法只能被它的子类重写。

声明为 final 和static的方法不能被重写。

构造方法不能被重写。

如果不能继承一个方法,则不能重写这个方法。

转载地址:https://blog.csdn.net/weixin_32473663/article/details/114878255 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:docker 部署java_docker 部署java环境以及常用应用(持续更新)
下一篇:estore java_estore2 - WEB源码|JSP源码/Java|源代码 - 源码中国

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月06日 14时16分23秒