1、Java基础与面向对象实用小程序例3-1 对象中成员变量的灵活定义及使用本例模拟通讯录功能,定义了Person类保存人员信息,能够对用户输入的姓名、性别、电话号码进行保存,还可进行分类。Person类的多个对象就是通讯录中的一套套完整信息。import java.util.Scanner;class Person String name; char sex; String phoneNumber; String category = 同学,同事,朋友,家人; int i; void setInfo() int n; Scanner reader = new Scanner(System.in)
2、; System.out.print(姓名:); name = reader.next(); System.out.print(性别:); sex = reader.next().charAt(0); System.out.print(电话号码:); phoneNumber = reader.next(); do System.out.print(选择分类:1.同学 2同事 3朋友 4家人 请选择:); i = reader.nextInt()-1; while(i3); void showInfo() System.out.println(name+t+sex+t+phoneNumber+t
3、+categoryi); public class PersonTest public static void main(String args) Person p = new Person3; for(int i=0;i3;i+) pi = new Person(); System.out.println(-请输入第+(i+1)+个人的信息-); pi.setInfo(); System.out.println(-); System.out.println(姓名t性别t电话号码t分类); for(int i=0;ib?a:b; /将a和b之间的较大值存给temp System.out.pri
4、ntln(a+与+b+间的较大值是+temp); m = d1d2?d1:d2; /将d1和d2间的较大值存给m m = md3?m:d3; /m与d3比较出最大值,仍保存至m System.out.println(d1+,+d2+,+d3+间的最大值是+m); 例3- 8 字符数组元素初始值及循环赋值public class InitSample public static void main(String args) char letters = new char26; System.out.println(赋值前); for(int i=0; i26; i+) /循环输出各数组元素 Sy
5、stem.out.print(lettersi + ); if(i+1)%9 = 0) /输出9个元素后换行 System.out.println(); System.out.println(); char c = A; for(int i=0; c=Z; c+,i+) /循环将字母AZ依次存至数组元素 lettersi = c; System.out.println(赋值后); for(int i=0; i=0; i-) System.out.println(argsi); 例3-10 定义整型数组初始化赋若干个整数。输出数组长度及各元素值。public class InitSample2
6、public static void main(String args) int arr = 45,12,23,9,5,78,4,51,2,6,85,78; System.out.println(数组s的长度为: + arr.length); for(int i=0; iarr.length; i+) System.out.println(“第”+(i+1)+”个数组元素是:”+arri); 例3-11 定义数组存放十个学生成绩,计算总分和平均分,找出最高分。public class ScoreTest public static void main(String s) int score=7
7、0,80,90,85,76,95,94,85,72,83; int sum=0,aver,max=score0,n=0; for(int i=0;imax) max = scorei; /找最高分 n = i+1; /记录最高分是第几个同学 aver = sum/10; System.out.println( 总分是: + sum +平均分是: + aver + 最高分是第 + n + 个同学,成绩为 + max); 例3-12 定义一个字符型数组,初始化赋值。提示用户输入一个整数,根据数值找到相应位置的字符,输出该字符。如果整数不在数组个数范围内则进行相应提示。本例中实现接收用户输入数据的相
8、关内容详见3.6节。import java.util.Scanner; /引入java.util包中的Scanner类public class ArrayDemo public static void main(String args) /创建用来接收用户输入数据的Scanner类的对象reader Scanner reader = new Scanner(System.in); char charArray = c,h,a,r,a,c,t,e,r;/初始化数组 System.out.print(数组的所有元素是:); for(int i = 0; i=1 & index=charArray.
9、length ) System.out.println(您要查找的字符是+charArrayindex-1); else System.out.println(数据超出合法范围,无法进行查找。); 例3-13 冒泡排序法例程由命令行参数给出一系列整数,使用冒泡排序法对这些整数进行冒泡排序,按从小到大顺序输出排序后的结果。public class SortDemo public static void main(String args) int i,j; String temp; for(i=0;iargs.length;i+) /从第一个元素开始/与后面的每个元素依次比较 for(j=0;jI
10、nteger.parseInt(argsj+1) temp = argsj; /交换相邻元素位置 argsj = argsj+1; argsj+1 = temp; System.out.println(按从小到大排序后数组元素为:); for(i=0;iargs.length;i+) /循环输出排序后的所有元素 System.out.print(argsi+ ); System.out.println(); 例3-14 定义学生类Student,可以存放每个学生的姓名、年龄、成绩,包含两个成员方法:能够设置这三项属性值,能够输出这三项信息。在主类的main方法中定义Student类的对象数组。
11、提示用户确定学生的个数,然后给每个学生输入三方面信息,最后集体显示在屏幕上。本例中实现读入用户输入数据的相关内容介绍详见3.6节。import java.util.Scanner; /引入java.util包里的Scanner类class StudentDemo public static void main(String args) /创建用来接收用户输入数据的Scanner类的对象reader Scanner reader = new Scanner(System.in); Student stu; /声明Student类类型数组stu int n; /学生个数 System.out.pr
12、intln(您要输入多少同学的信息?); n = reader.nextInt(); /接收用户输入的整数存至变量n if(n=0) /个数合法性判断 System.out.println(个数错误!); else stu = new Studentn; /创建stu数组,包含n个元素 /循环创建每个数组元素对象,设置各对象的全部信息 for(int i=0;in;i+) stui=new Student(); /给每个数组元素创建对象 System.out.println(请输入第+(i+1)+个同学的姓名); String name = reader.next(); /读入字符串存至姓名
13、System.out.println(请输入第+(i+1)+个同学的年龄); int age = reader.nextInt(); /读入整数存至年龄 System.out.println(请输入第+(i+1)+个同学的成绩); double score = reader.nextDouble(); /读入实数存至成绩 stui.setItem(name,age,score); for(int i=0; in;i+) /循环对每个数组元素信息进行输出 stui.printInfo(); /定义学生类class Student String name; /姓名 int age; /年龄 dou
14、ble score; /成绩 void setItem(String n, int a, double s) /设置成员值 name = n; age = a; score = s; void printInfo() /输出各项信息 System.out.println(姓名是+name+,年龄是+age+,成绩是+score); 例3-15 数组的引用public class ArrayReference public static void main(String args) int a = 1,2,3,4,5; /初始化整型数组a int b; /声明整型数组b b = a; /将数组a
15、的引用赋值给数组b,即b也引用同样数组空间 System.out.println(数组a的首地址是+a); System.out.println(数组b的首地址是+b); int i; System.out.print(数组a的元素有:); for(i = 0;ia.length;i+) /循环输出数组a的所有元素 System.out.print(ai+ ); /输出一个元素后空格 System.out.println(); /所有元素输出后换行 System.out.print(数组b的元素有:); for(i = 0;ia.length;i+) /循环输出数组b的所有元素 System.
16、out.print(bi+ ); System.out.println(); 例3-16 编写程序,运行时提示用户输入一个数,输出该数的绝对值。import java.util.Scanner; /引入java.util包里的Scanner类class AbsTest public static void main(String args) /创建用来接收用户输入数据的Scanner类的对象reader Scanner reader = new Scanner(System.in); System.out.println(请输入一个数); double num = reader.nextDou
17、ble(); /接收一个双精度数据存至变量num if(num0) /得到num的绝对值 num = -num; System.out.println(该数的绝对值是+num); 例3-17 提示用户输入一个半径值,将数据读入。再提示用户选择1为计算周长,选择2为计算面积,根据用户所选内容进行计算,输出结果。import java.util.Scanner; /引入java.util包里的Scanner类class CircleTest public static void main(String args) Scanner reader = new Scanner(System.in); /
18、创建Scanner对象reader System.out.println(请输入一个半径值); /提示用户输入半径 double r = reader.nextDouble(); /接收用户输入的半径值 System.out.println(1. 计算周长 2.计算面积); /提示用户进行选择 System.out.print(请选择:); int choice = reader.nextInt(); /读入用户的选择 if(choice = 1) /根据选择进行不同计算并输出结果 System.out.println(周长为+2*3.14*r); else if(choice = 2) System.out.println(面积为+3.14*r*r); else System.out.println(选择错误); 例3-18 用户输入成绩,求平均值。要求提示用户确定成绩的个数,提示用户输入每个成绩,使用数组存放成绩,求出平均值输出结果。import java.util.Scanner; /引入java.util包里的Scanner类class ScoreTest public static void main(String args) Scanner reader = new Scanner(System.in);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1