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/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

发表回复

登录后才能评论