Java基础与面向对象实用小程序.docx

上传人:b****3 文档编号:3674050 上传时间:2022-11-24 格式:DOCX 页数:18 大小:25.83KB
下载 相关 举报
Java基础与面向对象实用小程序.docx_第1页
第1页 / 共18页
Java基础与面向对象实用小程序.docx_第2页
第2页 / 共18页
Java基础与面向对象实用小程序.docx_第3页
第3页 / 共18页
Java基础与面向对象实用小程序.docx_第4页
第4页 / 共18页
Java基础与面向对象实用小程序.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

Java基础与面向对象实用小程序.docx

《Java基础与面向对象实用小程序.docx》由会员分享,可在线阅读,更多相关《Java基础与面向对象实用小程序.docx(18页珍藏版)》请在冰豆网上搜索。

Java基础与面向对象实用小程序.docx

Java基础与面向对象实用小程序

例3-1对象中成员变量的灵活定义及使用

本例模拟通讯录功能,定义了Person类保存人员信息,能够对用户输入的姓名、性别、电话号码进行保存,还可进行分类。

Person类的多个对象就是通讯录中的一套套完整信息。

importjava.util.Scanner;

classPerson{

Stringname;

charsex;

StringphoneNumber;

Stringcategory[]={"同学","同事","朋友","家人"};

inti;

voidsetInfo(){

intn;

Scannerreader=newScanner(System.in);

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(i<0||i>3);

}

voidshowInfo(){

System.out.println(name+"\t"+sex+"\t"+phoneNumber+"\t"+category[i]);

}

}

publicclassPersonTest{

publicstaticvoidmain(String[]args){

Personp[]=newPerson[3];

for(inti=0;i<3;i++){

p[i]=newPerson();

System.out.println("------请输入第"+(i+1)+"个人的信息------");

p[i].setInfo();

}

System.out.println("------------------------------------");

System.out.println("姓名\t性别\t电话号码\t分类");

for(inti=0;i<3;i++)

p[i].showInfo();

}

}

例3-2熟悉Java的基本数据类型

publicclassBasicDataTypes{

publicstaticvoidmain(Stringargs[]){

byteb=0x55;//将十六进制数据赋值给b

shorts=0x55ff;//将十六进制数据赋值给s

inti=1000000;

longl=0x10EF;//将十六进制数据赋值给l

charc='*';

floatf=0.23f;

doubled=0.7E-3;//将科学计数法表示的浮点型数据赋值给d

booleanbool=true;

System.out.println("byteb="+b);

System.out.println("shorts="+s);

System.out.println("inti="+i);

System.out.println("longl="+l);

System.out.println("charc="+c);

System.out.println("floatf="+f);

System.out.println("doubled="+d);

System.out.println("booleanbool="+bool);

}

}

例3-3熟悉Java中的各类型的转换

publicclassConversion{

publicstaticvoidmain(Stringargs[]){

byteb;

inti=257;

doubled=323.567;

charch;

shorts;

b=(byte)i;//将整型变量i的数据强制类型转换为byte类型赋值给b

System.out.println("int→byte例:

int型"+i+"→byte型"+b);

i=(int)d;//将双精度类型变量d的数据强制类型转换为int型赋值给i

System.out.println("double→int例:

double型"+d+"→int型"+i);

b=(byte)d;//将双精度类型变量d的数据强制类型转换为byte型赋值给b

System.out.println("double→byte例:

ddouble型"+d+"→int型"+b);

ch=(char)94;//将int型数据94强制类型转换为char类型赋值给ch

System.out.println("94→char例:

int型94→char型"+ch);

s=(short)4000;//将int型数据4000强制类型转换为short型赋值给s

System.out.println("4000→short例:

int型4000→short型"+s);

}

}

例3-4字符串的方便使用

publicclassStringTest{

publicstaticvoidmain(String[]args){

Strings1="你好啊~!

",s2="hello~^_^";

System.out.println("字符串s1的内容是:

"+s1);

System.out.println("字符串s2的内容是:

"+s2);

s1=s2;

System.out.println("将s2赋值给s1后,");

System.out.println("字符串s1的内容是:

"+s1);

System.out.println("字符串s2的内容是:

"+s2);

}

}

例3-5不同类型数据间的混合算术运算

publicclassMixTest{

publicstaticvoidmain(String[]args){

intiNum1=10;

doublefNum2=25.5;

charchNum3='a';

Stringstr1="结果是";

System.out.println(iNum1+"%6"+"="+iNum1%6);

System.out.println(iNum1+"/6"+"="+iNum1/6);

System.out.println(fNum2+"%"+iNum1+"="+fNum2%iNum1);

System.out.println(iNum1+"*"+fNum2+"%125"+"+"+chNum3+"="+

(iNum1*fNum2%125+chNum3));

System.out.println(iNum1+"+"+fNum2+str1+(iNum1+fNum2));

}

}

例3-6自增自减运算符的使用

publicclassDemo{

publicstaticvoidmain(String[]args){

inti=5;

System.out.println(++i);//相当于i=i+1;输出i;

inta=10;

intb=a--;//相当于两条语句,先intb=a;后a=a-1;

System.out.println("a="+a+",b="+b);

}

}

例3-7条件运算符的使用

publicclassMaxTest{

publicstaticvoidmain(String[]args){

inta=1,b=2,temp;

doubled1=1.1,d2=-9.9,d3=96.9,m;

temp=a>b?

a:

b;//将a和b之间的较大值存给temp

System.out.println(a+"与"+b+"间的较大值是"+temp);

m=d1>d2?

d1:

d2;//将d1和d2间的较大值存给m

m=m>d3?

m:

d3;//m与d3比较出最大值,仍保存至m

System.out.println(d1+","+d2+","+d3+"间的最大值是"+m);

}

}

例3-8字符数组元素初始值及循环赋值

publicclassInitSample{

publicstaticvoidmain(String[]args){

char[]letters=newchar[26];

System.out.println("赋值前");

for(inti=0;i<26;i++){//循环输出各数组元素

System.out.print(letters[i]+"");

if((i+1)%9==0)//输出9个元素后换行

System.out.println();

}

System.out.println();

charc='A';

for(inti=0;c<='Z';c++,i++){//循环将字母A—Z依次存至数组元素

letters[i]=c;

}

System.out.println("赋值后");

for(inti=0;i<26;i++){//循环输出各数组元素

System.out.print(letters[i]+"");

if((i+1)%9==0)//输出9个元素后换行

System.out.println();

}

}

}

例3-9从命令行随意输入若干参数,反向输出所有元素。

publicclassArgsTest{

publicstaticvoidmain(String[]args){

for(inti=args.length-1;i>=0;i--)

System.out.println(args[i]);

}

}

例3-10定义整型数组初始化赋若干个整数。

输出数组长度及各元素值。

publicclassInitSample2{

publicstaticvoidmain(String[]args){

int[]arr={45,12,23,9,5,78,4,51,2,6,85,78};

System.out.println("数组s的长度为:

"+arr.length);

for(inti=0;i

System.out.println(“第”+(i+1)+”个数组元素是:

”+arr[i]);

}

}

}

例3-11定义数组存放十个学生成绩,计算总分和平均分,找出最高分。

publicclassScoreTest{

publicstaticvoidmain(String[]s){

intscore[]={70,80,90,85,76,95,94,85,72,83};

intsum=0,aver,max=score[0],n=0;

for(inti=0;i

sum+=score[i];

if(score[i]>max){

max=score[i];//找最高分

n=i+1;//记录最高分是第几个同学

}

}

aver=sum/10;

System.out.println("总分是:

"+sum+"平均分是:

"+aver+

"最高分是第"+n+"个同学,成绩为"+max);

}

}

例3-12定义一个字符型数组,初始化赋值。

提示用户输入一个整数,根据数值找到相应位置的字符,输出该字符。

如果整数不在数组个数范围内则进行相应提示。

本例中实现接收用户输入数据的相关内容详见3.6节。

importjava.util.Scanner;//引入java.util包中的Scanner类

publicclassArrayDemo{

publicstaticvoidmain(String[]args){

//创建用来接收用户输入数据的Scanner类的对象reader

Scannerreader=newScanner(System.in);

charcharArray[]={'c','h','a','r','a','c','t','e','r'};//初始化数组

System.out.print("数组的所有元素是:

");

for(inti=0;i

System.out.print(charArray[i]);

System.out.println();

System.out.println("您要查找第几个字符?

");

intindex=reader.nextInt();//接收用户输入的整数,保存至index

if(index>=1&&index<=charArray.length)

System.out.println("您要查找的字符是"+charArray[index-1]);

else

System.out.println("数据超出合法范围,无法进行查找。

");

}

}

例3-13冒泡排序法例程

由命令行参数给出一系列整数,使用冒泡排序法对这些整数进行冒泡排序,按从小到大顺序输出排序后的结果。

publicclassSortDemo{

publicstaticvoidmain(String[]args){

inti,j;

Stringtemp;

for(i=0;i

//与后面的每个元素依次比较

for(j=0;j

if(Integer.parseInt(args[j])>Integer.parseInt(args[j+1])){

temp=args[j];//交换相邻元素位置

args[j]=args[j+1];

args[j+1]=temp;

}

}

System.out.println("按从小到大排序后数组元素为:

");

for(i=0;i

System.out.print(args[i]+"");

System.out.println();

}

}

例3-14定义学生类Student,可以存放每个学生的姓名、年龄、成绩,包含两个成员方法:

能够设置这三项属性值,能够输出这三项信息。

在主类的main方法中定义Student类的对象数组。

提示用户确定学生的个数,然后给每个学生输入三方面信息,最后集体显示在屏幕上。

本例中实现读入用户输入数据的相关内容介绍详见3.6节。

importjava.util.Scanner;//引入java.util包里的Scanner类

classStudentDemo{

publicstaticvoidmain(String[]args){

//创建用来接收用户输入数据的Scanner类的对象reader

Scannerreader=newScanner(System.in);

Studentstu[];//声明Student类类型数组stu

intn;//学生个数

System.out.println("您要输入多少同学的信息?

");

n=reader.nextInt();//接收用户输入的整数存至变量n

if(n<=0)//个数合法性判断

System.out.println("个数错误!

");

else{

stu=newStudent[n];//创建stu数组,包含n个元素

//循环创建每个数组元素对象,设置各对象的全部信息

for(inti=0;i

stu[i]=newStudent();//给每个数组元素创建对象

System.out.println("请输入第"+(i+1)+"个同学的姓名");

Stringname=reader.next();//读入字符串存至姓名

System.out.println("请输入第"+(i+1)+"个同学的年龄");

intage=reader.nextInt();//读入整数存至年龄

System.out.println("请输入第"+(i+1)+"个同学的成绩");

doublescore=reader.nextDouble();//读入实数存至成绩

stu[i].setItem(name,age,score);

}

for(inti=0;i

stu[i].printInfo();

}

}

}

//定义学生类

classStudent{

Stringname;//姓名

intage;//年龄

doublescore;//成绩

voidsetItem(Stringn,inta,doubles){//设置成员值

name=n;

age=a;

score=s;

}

voidprintInfo(){//输出各项信息

System.out.println("姓名是"+name+",年龄是"+age+",成绩是"+score);

}

}

例3-15数组的引用

publicclassArrayReference{

publicstaticvoidmain(String[]args){

inta[]={1,2,3,4,5};//初始化整型数组a

intb[];//声明整型数组b

b=a;//将数组a的引用赋值给数组b,即b也引用同样数组空间

System.out.println("数组a的首地址是"+a);

System.out.println("数组b的首地址是"+b);

inti;

System.out.print("数组a的元素有:

");

for(i=0;i

System.out.print(a[i]+"");//输出一个元素后空格

System.out.println();//所有元素输出后换行

System.out.print("数组b的元素有:

");

for(i=0;i

System.out.print(b[i]+"");

System.out.println();

}

}

例3-16编写程序,运行时提示用户输入一个数,输出该数的绝对值。

importjava.util.Scanner;//引入java.util包里的Scanner类

classAbsTest{

publicstaticvoidmain(String[]args){

//创建用来接收用户输入数据的Scanner类的对象reader

Scannerreader=newScanner(System.in);

System.out.println("请输入一个数");

doublenum=reader.nextDouble();//接收一个双精度数据存至变量num

if(num<0)//得到num的绝对值

num=-num;

System.out.println("该数的绝对值是"+num);

}

}

例3-17提示用户输入一个半径值,将数据读入。

再提示用户选择1为计算周长,选择2为计算面积,根据用户所选内容进行计算,输出结果。

importjava.util.Scanner;//引入java.util包里的Scanner类

classCircleTest{

publicstaticvoidmain(String[]args){

Scannerreader=newScanner(System.in);//创建Scanner对象reader

System.out.println("请输入一个半径值");//提示用户输入半径

doubler=reader.nextDouble();//接收用户输入的半径值

System.out.println("1.计算周长2.计算面积");//提示用户进行选择

System.out.print("请选择:

");

intchoice=reader.nextInt();//读入用户的选择

if(choice==1)//根据选择进行不同计算并输出结果

System.out.println("周长为"+2*3.14*r);

elseif(choice==2)

System.out.println("面积为"+3.14*r*r);

else

System.out.println("选择错误");

}

}

例3-18用户输入成绩,求平均值。

要求提示用户确定成绩的个数,提示用户输入每个成绩,使用数组存放成绩,求出平均值输出结果。

importjava.util.Scanner;//引入java.util包里的Scanner类

classScoreTest{

publicstaticvoidmain(String[]args){

Scannerreader=newScanner(System.in);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1