我的java之路week2類的無參、帶參方法

来源:https://www.cnblogs.com/IUnicorn/archive/2018/02/05/8419623.html
-Advertisement-
Play Games

2.1語法 public 返回值類型 方法名(){ //方法體 } 2.2方法的調用語法 對象名.方法名 計算平均分和總成績 1 public class Score { 2 /** 3 * 創建類 ScoreCalc 編寫方法實現各功能 編寫測試類 4 * 從鍵盤接收三門課分數,(java c# ...


2.1語法

public 返回值類型 方法名(){

//方法體

}

2.2方法的調用語法

對象名.方法名

計算平均分和總成績

 1 public class Score {
 2     /**
 3      * 創建類 ScoreCalc 編寫方法實現各功能 編寫測試類
 4      *  從鍵盤接收三門課分數,(java c# db) 
 5      *  計算三門課的平均分和總成績,
 6      * 編寫成績計算類實現功能 _______
 7      */
 8     int java;
 9     int c;
10     int db;
11 
12     public double avg() {
13         double a = (double) (java + c + db) / 3;
14         return a;
15     }
16 
17     public int addAll() {
18 
19         int ad = java + c + db;
20         return ad;
21     }
22 
23 }
Score
 1 import java.util.Scanner;
 2 
 3 
 4 public class TestScore {
 5     public static void main(String[] args) {
 6         Score sc=new Score();
 7         Scanner input=new Scanner(System.in);
 8         System.out.println("請輸入java成績:");
 9         sc.java=input.nextInt();
10         System.out.println("請輸入c成績:");
11         sc.c=input.nextInt();
12         System.out.println("請輸入db成績:");
13         sc.db=input.nextInt();
14         
15         System.out.println(sc.addAll());//總成績
16         System.out.println(sc.avg());//平均成績
17     }
18 
19 }
TestScore
package week2;

public class Manager {
	String name;
	String password;
	/**
	 * 列印學員信息
	 */
	
	public void show() {
		System.out.println("管理員名為:"+name+"\n密碼為:"+password);
		
	}

}

  

 1 package week2;
 2 
 3 public class TestManager {
 4     public static void main(String[] args) {
 5         Manager manager=new Manager();
 6         manager.name="王鐸";
 7         manager.password="123";
 8         manager.show();
 9     }
10 
11 }
TestManager

2.3用數組作為參數

package week2;
public class JavaScore {
	public double avg(int[] scores) {
		int sum = 0;
		double avg1 = 0.0;
		for (int i = 0; i < scores.length; i++) {
			sum = sum + scores[i];

		}
		avg1 = (double) sum / scores.length;

		return avg1;

	}
	public int max(int[] scores) {
		int max1 = scores[0];
		for (int i = 0; i < scores.length; i++) {
			if (max1 < scores[i]) {// 最大值
				max1 = scores[i];

			}
		}
		return max1;

	}

}

  

package week2;

import java.util.Scanner;

public class TestScore {
	public static void main(String[] args) {
		JavaScore javascore=new JavaScore();
		int []scores=new int [4];
		Scanner input=new Scanner(System.in);
		System.out.println("請輸入5名參賽者的平均成績:");
		for (int i = 0; i < scores.length; i++) {
			scores[i]=input.nextInt();
			
		}
		//pingj
		javascore.avg(scores);
		
	}

}

2.4多個參數的方法

package week2;

public class StudentBz {
	String[] names = new String[30];

	// 添加學生信息
	public void addName(String name) {
		for (int i = 0; i < names.length; i++) {
			if (names[i] == null) {
				names[i] = name;
				break;

			}

		}

	}

	// 展示學生信息
	public void nameShow() {
		for (int i = 0; i < names.length; i++) {
			if (names[i] != null) {
				System.out.print(names[i] + ",");

			}

		}

	}

	public boolean searchFind(int start, int end, String name) {
		boolean find = false;// 標識查找的位置
		for (int i = start - 1; i < end; i++) {// i=start-1sss數組下標
			if (names[i].equals(name)) {
				find = true;
				break;

			}

		}

		return find;
	}

	public boolean updateName(String newName, String oldName) {
		boolean find = false;
		// 查找老name
		for (int i = 0; i < names.length; i++) {
			if (oldName.equals(names[i])) {
				names[i] = newName;
				find = true;
				break;

			}

		}
		return find;

	}

}

  

package week2;

import java.util.Scanner;

public class TestAdd {
	public static void main(String[] args) {
		StudentBz stu=new StudentBz();
		for (int i = 0; i < 3; i++) {
			Scanner input=new Scanner(System.in);
			System.out.print("請輸入學生姓名:");
			String na=input.next();
			stu.addName(na);
			
		}
		
		stu.nameShow();
		
		boolean result=stu.searchFind(2, 5, "name2");
		System.out.println(result);
		
		boolean updateResult=stu.updateName("newName", "name2");
		System.out.println("是否修改成功"+updateResult);
		stu.nameShow();
	}



}

  2.5對象作為參數

1 package week2;
2 
3 public class Student {
4     String name;
5     int age;
6     int no;
7     int score;
8 
9 }
Student
 1 package week2;
 2 
 3 public class StudentBz2 {
 4 
 5     Student students[] = new Student[30];
 6 
 7     public void addStudent(Student student) {
 8         for (int i = 0; i < students.length; i++) {
 9             if (students[i] == null) {
10                 students[i] = student;
11                 break;
12             }
13 
14         }
15 
16     }
17 
18     public void showStudent() {
19         for (int i = 0; i < students.length; i++) {
20             if (students[i] != null) {
21                 System.out.println(students[i].name + "," + students[i].age
22                         + "," + students[i].no + "," + students[i].score + ",");
23 
24             }
25 
26         }
27 
28     }
29 
30 }
StudentBz2
 1 package week2;
 2 
 3 import java.util.Scanner;
 4 
 5 public class TestStudentBz2 {
 6     public static void main(String[] args) {
 7         StudentBz2 stubz=new StudentBz2();    
 8         Scanner input=new Scanner(System.in);
 9         for (int i = 0; i < 2; i++) {
10             Student stu=new Student();//迴圈幾次出現幾個對象
11             System.out.print("請輸入姓名:");
12             stu.name=input.next();
13             System.out.print("請輸入年齡:");
14             stu.age=input.nextInt();
15             System.out.print("請輸入學號:");
16             stu.no=input.nextInt();
17             System.out.print("請輸入成績:");
18             stu.score=input.nextInt();            
19             stubz.addStudent(stu);
20         }
21         System.out.println();
22         
23         stubz.showStudent();
24                 
25     }
26     
27 }
TestStudentBz2

練習實現對客戶姓名的排序

 1 package week2;
 2 
 3 import java.util.Arrays;
 4 
 5 public class KH {
 6     
 7     public void sortName(String []names) {
 8         Arrays.sort(names);
 9         
10     }
11 }
KH
 1 package week2;
 2 
 3 public class KHTest {
 4     public static void main(String[] args) {
 5         String []names={"j","sds","sdssf","ssf"};
 6         KH kh=new KH();
 7         System.out.println("排序前");
 8         for (int i = 0; i < names.length; i++) {
 9             if (names[i]!=null) {
10                 System.out.println(names[i]+",");
11                             
12             }
13             
14         }
15         kh.sortName(names);
16         System.out.println("排序後");
17         for (int i = 0; i < names.length; i++) {
18             if (names[i]!=null) {
19                 System.out.println(names[i]+",");
20                 
21                 
22             }
23             
24             
25         }
26     }
27 
28 }
KHTest

帶參數練習

 1 package week2;
 2 
 3 public class CustomerBiz {
 4     String []customer=new String[30];
 5     
 6     public void addName(String name) {
 7         for (int i = 0; i < customer.length; i++) {
 8             if (customer[i]==null) {
 9                 customer[i]=name;
10                 break;
11                 
12             }
13         
14             
15         }
16         
17         
18     }
19     
20     
21     public void showNames() {
22         System.out.println("*****************");
23         System.out.println("客戶姓名列表");
24         
25         for (int i = 0; i < customer.length; i++) {
26             if (customer[i]!=null) {
27                 System.out.println(customer[i]+",");
28                 
29             }
30             
31             
32         }
33         
34         
35         
36     }
37 
38 }
CustomerBiz
 1 package week2;
 2 
 3 import java.util.Scanner;
 4 
 5 public class TestCustomer {
 6     public static void main(String[] args) {
 7         boolean con = false;
 8         CustomerBiz cust = new CustomerBiz();
 9         Scanner input = new Scanner(System.in);
10 
11         for (int i = 0; i < 3; i++) {
12             System.out.print("請輸入客戶姓名:");
13             String na = input.next();
14             cust.addName(na);
15             System.out.println("是否繼續(y/n)");
16             String n = input.next();
17 
18             if (!n.equals("y")) {
19 
20             }
21 
22         }
23         cust.showNames();
24 
25     }
26 
27 }
TestCustomer

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 該系列教程系個人原創,並完整發佈在個人官網 "劉江的博客和教程" 所有轉載本文者,需在頂部顯著位置註明原作者及www.liujiangblog.com官網地址。 Python及Django學習QQ群:453131687 很多時候,我們都不是從‘一窮二白’開始編寫模型的,有時候可以從第三方庫中繼承,有 ...
  • 通過前面三篇的分析,我們深入瞭解了AbstractQueuedSynchronizer的內部結構和一些設計理念,知道了AbstractQueuedSynchronizer內部維護了一個同步狀態和兩個排隊區,這兩個排隊區分別是同步隊列和條件隊列。我們還是拿公共廁所做比喻,同步隊列是主要的排隊區,如果公 ...
  • 一、秒殺業務為什麼難做 IM系統,例如QQ或者微博,每個人都讀自己的數據(好友列表、群列表、個人信息)。 微博系統,每個人讀你關註的人的數據,一個人讀多個人的數據。 秒殺系統,庫存只有一份,所有人會在集中的時間讀和寫這些數據,多個人讀一個數據。 例如小米手機每周二的秒殺,可能手機只有1萬部,但瞬時進 ...
  • 相關內容: 繼承:多繼承、super、__init__、重寫父類變數或函數 多態 繼承: 在Python3中,不寫基類的類預設繼承object 繼承就是子類獲得了父類的全部功能:比如學生和老師都有“姓名,性別,年齡、ID”等學校人員屬性,如果學生和老師都直接繼承學校人員的“姓名,性別,年齡、ID”,... ...
  • 案例目標 簡單介紹 redis pipeline 的機制,結合一段實例說明pipeline 在提升吞吐量方面發生的效用。 案例背景 應用系統在數據推送或事件處理過程中,往往出現數據流經過多個網元; 然而在某些服務中,數據操作對redis 是強依賴的,在最近的一次分析中發現: 一次數據推送會對 red ...
  • 當多個類中出現同一個功能,但是具體的主體功能不同,這時可以進行向上抽取,只抽取功能定義,主體功能由特定類實現。 上面這個類使用abstract關鍵字進行區分 抽象類的特點: 1、抽象方法一定在抽象類中。 2、抽象方法和抽象類都必須被abstract關鍵字修飾。 3、抽象類不可以使用new創建對象,因 ...
  • 所謂的JSP(Java Server Page)就是指在HTML中嵌入大量的Java代碼而已。 JSP註釋 顯示註釋(允許客戶端點擊查看源碼看到) <!-- 註釋內容 -->(HTML註釋) 隱式註釋(客戶端無法看見) // 註釋:單行註釋(Java註釋) /* 註釋 */:多行註釋(Java註釋) ...
  • 追新番網站提供最新的日劇和日影下載地址,更新比較快。 個人比較喜歡看日劇,因此想著通過爬取該網站,做一個資源地圖 可以查看網站到底有哪些日劇,並且隨時可以下載。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...