本文目录一览:
- 1、编写一个完整的JAVA的程序
- 2、1. 以下是一个Java 的完整程序,它定义了一个类Car,并在程序中创建了一个该类的对象demoCar
- 3、需要一个java程序
- 4、java编写一个java程序
- 5、用JAVA的do-while语句编写程序例子
- 6、求一个完整的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;
}
}
}
我发的代码老是会挤到一起,所以我再把程序截图给你:
运行结果:
打印成绩:
成绩单排序:
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);
}
}
测试与结果: