java完整程序例子,JAVA程序例子

本文目錄一覽:

編寫一個完整的JAVA的程序

public class Test {

public static void main(String[] args) {

Student student1 = new Student();

Student student2 = new Student(“王二”);

student1.show();

student2.show();

student1.setName(“李四”);

student2.setName(“趙六”);

student1.show();

student2.show();

}

}

interface Person {

void show();

}

class Student implements Person {

private String name;

public Student() {

name = “王二”;

}

public Student(String name) {

super();

this.name = name;

}

public void show() {

System.out.printf(“name=%s\n”, name);

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

1. 以下是一個Java 的完整程序,它定義了一個類Car,並在程序中創建了一個該類的對象demoCar

public class Car {

( privae )int car_number;

void set_number(int car_num){

car_number=( this.car_num ) ;

}

void show_number(){

System.out.println(“My car No. is: “+car_number);

}

}

class CarDemo{

public static void main(String[] args){

Car demoCar=new Car();

demoCar.set_number( 5566 );

demoCar.( show_number );

}

}

需要一個java程序

啊,寫了好幾個小時,方法比較笨,你參考一下:

public class Test {

//定義幾名學生

private static final String[] STUDENTS = {“張1”, “張2”, “張3”, “張4”, “張5”};

//定義課程名,課程號分別對應為數組下標 1,2,3…n+1,即英語的課程號為1,高數為2,以此類推,可以添加更多課程

private static final String[] CLASS_NAME = {“英語”, “高數”, “大物”};

public static void main(String[] args) {

//定義一個二維數組,模擬一份成績單,其中第一列為學生的名字,後面幾列分別代表各科成績,

//數組大小為:學生人數 × (課程數 + 1)

String[][] grades = new String[STUDENTS.length][CLASS_NAME.length + 1];

for (int i = 0; i STUDENTS.length; i++) {

grades[i][0] = STUDENTS[i];

//這裡使用隨機數來得到學生的成績,你也可以直接定義一個寫死的數組或者輸入進去

for (int j = 1; j CLASS_NAME.length + 1; j++) {

grades[i][j] = String.valueOf((int) (Math.random() * 100));

}

}

     //這裡先把成績單打印出來,並整理了格式

System.out.println(“學生成績單:”);

System.out.println(“[姓名|英語 高數 大物]”);

for (int i = 0; i STUDENTS.length; i++) {

System.out.print(“[“);

for (int j = 0; j CLASS_NAME.length + 1; j++) {

if (j == 0) {

System.out.print(String.format(“%-3s”, grades[i][j]) + “|”);

} else if (j CLASS_NAME.length) {

System.out.print(String.format(“%-3s”, grades[i][j]) + ” “);

} else {

System.out.print(String.format(“%-3s”, grades[i][j]));

}

}

System.out.print(“]”);

System.out.println(“”);

}

     //選擇操作

System.out.println(“———————-“);

System.out.println(“請選擇操作(1 – 任意學生成績的查詢;2 – 某一門課程的成績從低到高排序):”);

Scanner in = new Scanner(System.in);

int choose = in.nextInt();

if (choose == 1) {

System.out.println(“請輸入一個學生的名字:”);

in = new Scanner(System.in);

String studentName = in.nextLine();

for (int i = 0; i STUDENTS.length; i++) {

//將輸入的學生姓名在成績單第一列中比較,有該學生則輸出其成績

if (grades[i][0].equals(studentName)) {

System.out.println(“學生[” + studentName + “]的成績為:”);

for (int j = 0; j CLASS_NAME.length; j++) {

System.out.println(CLASS_NAME[j] + “:” + grades[i][j + 1]);

}

break;

}

if (i == STUDENTS.length – 1) {

System.out.println(“無此學生成績,請核對其姓名”);

}

}

     } else if (choose == 2) {

System.out.println(“請輸入一門課程的名字:”);

in = new Scanner(System.in);

String className = in.nextLine();

//因為涉及到二維數組的重新排序,我這裡定義了一個內部類SortGradeHelper,

//你不喜歡內部類也可以把它單獨拿出去弄成一個普通的類,類的定義和排序方式詳見這個類

SortGradeHelper sortGrade = new SortGradeHelper();

if (“英語”.equals(className)) {

grades = sortGrade.doSort(grades, 1);

} else if (“高數”.equals(className)) {

grades = sortGrade.doSort(grades, 2);

} else if (“大物”.equals(className)) {

grades = sortGrade.doSort(grades, 3);

} else {

System.out.println(“無此課程”);

return;

}

         //把新的成績單打印出來

System.out.println(“新的學生成績單:”);

System.out.println(“[姓名|英語 高數 大物]”);

for (int i = 0; i STUDENTS.length; i++) {

System.out.print(“[“);

for (int j = 0; j CLASS_NAME.length + 1; j++) {

if (j == 0) {

System.out.print(String.format(“%-3s”, grades[i][j]) + “|”);

} else if (j CLASS_NAME.length) {

System.out.print(String.format(“%-3s”, grades[i][j]) + ” “);

} else {

System.out.print(String.format(“%-3s”, grades[i][j]));

}

}

System.out.print(“]”);

System.out.println(“”);

}

} else {

System.out.println(“無效的選擇!(1 – 任意學生成績的查詢;2 – 某一門課程的成績從低到高排序)”);

}

}

 //成績排序小助手

static class SortGradeHelper {

private int sort; //順序號

private int grade;//成績

private SortGradeHelper[] sortGrades = new SortGradeHelper[STUDENTS.length];

SortGradeHelper() {

}

SortGradeHelper(int sort, int grade) {

this.sort = sort;

this.grade = grade;

}

     /*我這個二維數組排序的思想是:

1、首先將某一列排出來,比如英語成績,則把英語這一列先拿出來排序

2、以剛剛排出來的這一列為標準,按照新的行序列,把原成績單賦值給新成績單返回

可能有點繞,我舉個例子:

假設某成績單為:

[姓名|英語 高數 大物]

[張1 |7   1   40 ]

[張2 |93  32  78 ]

[張3 |24  25  74 ]

[張4 |8   79  28 ]

[張5 |10  67  45 ]

按照英語進行排列,則先取出英語這一列,生成本類的this.sortGrades數組,該數組具體為:

{ new SortGradeHelper(0,7),

new SortGradeHelper(1,93),

new SortGradeHelper(2,24),

new SortGradeHelper(3,8),

new SortGradeHelper(4,10)

}

則可以看出本列的原順序為:0,1,2,3,4

之後採用冒泡排序,按照英語成績從小到大排序,則排序後的this.sortGrades數組為:

{ new SortGradeHelper(0,7),

new SortGradeHelper(3,8),

new SortGradeHelper(4,10),

new SortGradeHelper(2,24),

new SortGradeHelper(1,93)

}

這便得到了新的順序:0,3,4,2,1

則成績單所有行都將按照這個新的順序排列,按照此順序得到newGrades[][]數組返回

*/

     String[][] doSort(String[][] grades, int classNo) {

//按照課程號取出該課程這一列的成績

for (int i = 0; i STUDENTS.length; i++) {

this.sortGrades[i] = new SortGradeHelper(i, Integer.valueOf(grades[i][classNo]));

}

//冒泡排序

SortGradeHelper temp;

for (int i = 0; i STUDENTS.length – 1; i++) {

for (int j = 0; j STUDENTS.length – 1 – i; j++) {

if (this.sortGrades[j].grade this.sortGrades[j + 1].grade) {

temp = this.sortGrades[j];

this.sortGrades[j] = this.sortGrades[j + 1];

this.sortGrades[j + 1] = temp;

}

}

}

         //按照新的順序重新排列成績單

String[][] newGrades = new String[STUDENTS.length][CLASS_NAME.length + 1];

for (int i = 0; i this.sortGrades.length; i++) {

for (int j = 0; j CLASS_NAME.length + 1; j++) {

newGrades[i][j] = grades[this.sortGrades[i].sort][j];

}

}

return newGrades;

}

}

}

我發的代碼老是會擠到一起,所以我再把程序截圖給你:

8-24行

25-41行

42-63行

64-80行

81-101行

102-114行

115-142行 對排序方法的注釋和舉例

143-159行

160-171行完

運行結果:

打印成績:

成績單排序:

java編寫一個java程序

按照題目要求編寫的Java程序如下

import java.util.Scanner;

public class AA {

 public static void main(String[] args) {

  int n,i;

  Scanner sc=new Scanner(System.in);

  n=sc.nextInt();

  for(i=2;i=n;i++){

   if(n%i==0){

    if(n/i==1)

     System.out.print(i);

    else

     System.out.print(i+”、”);

    n=n/i;

    i–;

   }

  }

 }

}

用JAVA的do-while語句編寫程序例子

public class SimpleDoWhile {

public static void main(String[] args) {

int index = 1;

do {

System.out.println(index);

index = index + 1;

} while(index = 10);

System.out.println(“DONE.”);

}

}

輸出結果為:

do…while 循環是 while 循環的變體。在檢查while()條件是否為真之前,該循環首先會執行一次do{}之內的語句,然後在while()內檢查條件是否為真,如果條件為真的話,就會重複do…while這個循環,直至while()為假。

do-while 循環語法格式:

do

{

循環體;

}

while (條件表達); //條件表達,可以引用外傳感器返回值。

擴展資料:

do…while 和 while循環非常相似,區別在於表達式的值是在每次循環結束時檢查而不是開始時。

和正規的 while 循環主要的區別是 do-while 的循環語句保證會執行一次(表達式的真值在每次循環結束後檢查),然而在正規的 while 循環中就不一定了(表達式真值在循環開始時檢查,如果一開始就為 FALSE 則整個循環立即終止)。

總結:while循環是先判斷後循環 ,而do–while循環是先循環後判斷。

參考資料:do while-百度百科

求一個完整的java程序

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.util.Scanner;

public class TestString {

public static void main(String[] args) throws IOException {

boolean flag = false;

do {

System.out.println();

System.out.println(“Do you want to continue?(Y/N)”);

Scanner scan = new Scanner(System.in);

String banlance = scan.next();

if (banlance.equals(“Y”)) {

flag = true;

} else if(banlance.equals(“N”)) {

System.out.println(“End!”);

break;

} else {

System.out.println(“Error Input!”);

}

System.out.print(“Please input the String: “);

BufferedReader br = new BufferedReader(new InputStreamReader(

System.in));

String str = br.readLine();

StringBuffer strBuffer = new StringBuffer(str);

for(int i=0; istrBuffer.length(); i++) {//將元音字母先刪掉

char c = strBuffer.charAt(i);

if ((c == ‘a’) || (c == ‘e’) || (c == ‘i’) || (c == ‘o’) || (c == ‘u’)) {

strBuffer = strBuffer.deleteCharAt(i);

–i;

}

}

for(int i=0,j=i+1; jstrBuffer.length(); i++,j++) {//處理重複輔音字母

char c1 = strBuffer.charAt(i), c2 = strBuffer.charAt(j);

if(c1 == c2) {

strBuffer = strBuffer.deleteCharAt(i);

–i;

–j;

}

}

System.out.println(strBuffer);

} while (flag = true);

}

}

測試與結果:

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/246915.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:18
下一篇 2024-12-12 13:18

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • 打造照片漫畫生成器的完整指南

    本文將分享如何使用Python編寫一個簡單的照片漫畫生成器,本文所提到的所有代碼和技術都適用於初學者。 一、環境準備 在開始編寫代碼之前,我們需要準備一些必要的環境。 首先,需要安…

    編程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件並生成完整的圖像

    OBJ格式是一種用於表示3D對象的標準格式,通常由一組頂點、面和紋理映射坐標組成。在本文中,我們將討論如何將多個OBJ文件拼接在一起,生成一個完整的3D模型。 一、讀取OBJ文件 …

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29

發表回復

登錄後才能評論