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));
}
}
}