【Java】Java学习笔记(5)

您所在的位置:网站首页 锥形的锥怎么写 【Java】Java学习笔记(5)

【Java】Java学习笔记(5)

2023-08-11 05:12| 来源: 网络整理| 查看: 265

本人私人博客:Megalomania,大部分文章会现在博客上传,有不足之处欢迎指正。

学校小学期Java课程的练习题,留个档便于以后需要时候有例子可以回忆,写的烂的地方请多多包含

1、计算圆锥、方锥的体积 描述:声明一个泛型类,包含计算体积的方法,只关心它的底是否能计算面积,并不关心底的类型。声明圆类和矩形类,分别包含计算面积的方法。用户输入圆锥的半径和高,打印输出圆锥的体积。输入方锥的长、宽、高,计算方锥的体积并输出。代码 import java.util.Scanner; class Cone { double height; E bottom; //用泛型类E声明对象bottom public Cone (E b) { bottom=b; } public void setHeight(double h) { height=h; } /* TODO:计算体积 功能描述:调用对象bottom的toString方法,返回字符串格式的圆面积,然后转为double类型,再根据公式计算锥形体积 参数说明:无 返回值说明:锥形体积 公式:1/3*底面积*高 */ public double computerVolume() { double area=Double.valueOf(bottom.toString()); return 1.0/3*area*height; } } class Circle { double area,radius; Circle(double r) { radius=r; } /* TODO:计算面积 功能描述:重写Object类的toString()方法,计算圆的面积 参数说明:无 返回值说明:圆的面积 */ public String toString() { double a=Math.PI*radius*radius; String area=String.valueOf(a); return area; } } class Rect { double sideA,sideB,area; Rect(double a,double b) { sideA=a; sideB=b; } /* TODO:计算面积 功能描述:重写Object类的toString()方法,计算矩形的面积 参数说明:无 返回值说明:矩形的面积 */ public String toString() { double x=sideA*sideB; String area=String.valueOf(x); return area; } } public class Example15_1 { public static void main(String args[]) { System.out.println("请输入圆锥的半径、高:"); Scanner scanner = new Scanner(System.in); Circle circle=new Circle(scanner.nextDouble()); Cone coneOne=new Cone(circle);//创建一个(圆)锥对象 coneOne.setHeight(scanner.nextDouble()); System.out.println("圆锥的体积:"+coneOne.computerVolume()); System.out.println("请输入方锥的长、宽、高:"); Rect rect=new Rect(scanner.nextDouble(),scanner.nextDouble()); Cone coneTwo=new Cone(rect);//创建一个(方)锥对象 coneTwo.setHeight(scanner.nextDouble()); System.out.println("方锥的体积:"+coneTwo.computerVolume()); } } 2、遍历链表中的数据 描述:定义一个链表集合,用户输入链表中两个节点中的数据,然后分别用集合中get方法遍历和iterator遍历,转化为字符串并输出。代码 import java.util.*; public class Test_1{ public static void main(String args[]){ LinkedList mylist=new LinkedList(); System.out.println("请输入链表2个节点中的数据:"); Scanner scanner = new Scanner(System.in); mylist.add(scanner.next()); //链表中的第一个节点 mylist.add(scanner.next()); //链表中的第二个节点 //TODO:获取链表的长度 int number=mylist.size(); for(int i=0;i /* TODO:把mylist中的数据强转换为String,并打印输出 打印语句提示:System.out.println("iterator:"+ 数据内容 ); */ System.out.println("iterator:"+iter.next()); } } } 3、对3个学生身高进行排序升序输出,然后查找与这3个学生身高相同的学生 描述:定义一个学生类,自定义一个比较方法,比较身高属性值的大小。定义一个集合,用户输入3个学生的姓名和身高,添加到集合中,并输出集合的数据。然后对集合进行排序,并输出排序后的内容。然后输入一个学生的姓名和身高,查找与这3个同学身高是否相同,相同则输出结果,否则不输出。代码 import java.util.*; class Student implements Comparable { int height=0; String name; Student(String n,int h) { name=n; height = h; } /* TODO:比较方法 功能描述:比较当前对象与参数对象的身高大小 参数说明:b为需要比较的对象 返回值说明:如当前对象比b对象身高值大,返回1;如相等返回0,如小于返回-1 */ public int compareTo(Object b) { if(height>((Student)b).height){ return 1; } else if(height==((Student)b).height){ return 0; } else{ return -1; } } } public class Test_1 { public static void main(String args[ ]) { List list = new LinkedList(); System.out.println("请输入3个学生姓名和身高:"); Scanner scanner = new Scanner(System.in); list.add(new Student(scanner.next(),scanner.nextInt())); list.add(new Student(scanner.next(),scanner.nextInt())); list.add(new Student(scanner.next(),scanner.nextInt())); Iterator iter=list.iterator(); System.out.println("排序前,链表中的数据"); for(Student s:list){ System.out.println(s.name+"身高:"+s.height); } Collections.sort(list); System.out.println("排序后,链表中的数据"); iter=list.iterator(); /* TODO:循环遍历迭代器iter,将学生姓名、身高输出 输出语句提示:System.out.println( 姓名 + "身高:"+ 身高 ); */ for(Student s:list){ System.out.println(s.name+"身高:"+s.height); } System.out.println("请输入要比较身高同学的姓名和身高:"); Student zhaoLin = new Student(scanner.next(),scanner.nextInt()); int index = Collections.binarySearch(list,zhaoLin,null); /* TODO:如果index大于等于0,则输出: System.out.println( 输入的名字 +"和链表中"+ 学生姓名 +"身高相同"); */ if(index>=0){ System.out.println(zhaoLin.name+"和链表中"+list.get(index).name+"身高相同"); } } }

文章转载请注明本人博客地址: 转载自:Megalomania - 【JAVA】JAVA学习笔记(5)——JAVA泛型作业函数题



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3