package chongzai;
public class Demo2 {
/*
* 对于类似相加的操作,因参数列表不同,所以我定义了许多方法名
* 问题:
* 1.太麻烦
* 2.如果方法名过多,有可能出现调用错误的情况
*
* 解决方式:
* 使用方法重载,只需记住一个方法名即可
* 参数的个数不同,方法重载与方法的参数名无关,看的是参数类型,且参数类型的顺序不同亦为重载
* 即:
* 1.参数个数
* 2.参数类型
* 3.参数类型顺序
* 与方法的返回类型无关
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(sum(1,2));
System.out.println(sum(1,2,3));
}
//方法重载:方法名相同,但参数列表不同
public static int sum(int a,int b) {
return a+b;
}
public static int sum(int a,int b,int c) {
return a+b+c;
}
public static int sum(double a,int b) {
return b;
}
public static int sum(int a,double b) {//参数类型不相同时位置不同,以为重载
return a;
}
}
java实现计算器
package chongzai;
public class Demo3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(calculate(10));
System.out.println(calculate(10,10));
System.out.println(calculate("你好"));
System.out.println(max(9,7,1));
}
public static int calculate(int a) {
return a*a;
}
public static int calculate(int a,int b) {
return a*b;
}
public static String calculate(String a) {
return a;
}
public static int max(int a,int b) {
return a>b?a:b;
}
public static double max(double a,double b) {
return a>b?a:b;
}
public static double max(double a,double b,double c) {
return (a>b?a:b)>c?(a>b?a:b):c;
}
public static double calculate(double a,double b,String c) {
switch(c) {
case "+":
return a+b;
case "-":
return a-b;
case "*":
return a*b;
case "/":
return a/b;
default:
System.out.println("输入错误!");
}
return 0.0;
}
}
package chongzai;
public class Demo4 {
/*
* 汽车图纸包含两部分
* 属性:颜色 品牌 价格
* 行为 跑
* 对应到类里也是两部分
* 成员变量(属性):直接在类里定义
* 成员方法 (行为):把static去掉就是成员方法
* 一个类通常情况下不能直接使用
* 要想使用则需要根据类去创建一个真正的对象去使用
* 如何创建一个类的对象
* 类名 对象名=new 类名();
*若系统未赋值,会有默认值
*类不占内存,是抽象的,而对象是创建出来的,是占内存的
*类是对象的描述,对象是类的实例
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Car car=new Car("红色","宝马",120000,5,2);
car.run();
Car car1=new Car();
System.out.println(car1.color);
car1.run();
//创建Dog 属性
}
}
java输入成绩判断学生等级Switch
package chongzai;
import java.util.Scanner;
public class grade {
public static String com(int score,int max) {
if(score>=max-10)
return "A";
else if(score>=max-20)
return "B";
else if(score>=max-30)
return "C";
else
return "D";
}
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("输入学生人数:");
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
int max=0;
int[] student=new int[num];
for(int i=0;i<num;i++) {
System.out.println("输入第"+(i+1)+"学生成绩:");
student[i]=sc.nextInt();
if(max<student[i])
max=student[i];
}
String a="";
for(int i=0;i<num;i++) {
System.out.println("第"+(i+1)+"个学生成绩等级为"+com(student[i],max));
}
}
}