求高手写个java代码!!!
编写一个程序。程序中定义一个类circle,其中有数据成员radius;创建一个有5个circle型元素的数组,其radius值分别为2、10、8、4、121、调用Arr...
编写一个程序。程序中定义一个类circle,其中有数据成员radius;创建一个有5个circle型元素的数组,其radius值分别为2、10、8、4、121、调用Arrays.sort()给这个数组排序,将排序前后的数组打印出来。2、在数组中查找radius为9和10的圆,并显示结果3、将circle型数组深拷贝到另一个数组中,并打印新的结果。
展开
展开全部
代码如下:
import java.util.Arrays;
class Circle {
private int radius;
public Circle(int radius) {
this.radius = radius;
}
public int getRadius() {
return radius;
}
public void setRadius(int radius) {
this.radius = radius;
}
@Override
public String toString() {
return "Circle [radius=" + radius + "]";
}
}
public class App {
public static void main(String[] args) throws CloneNotSupportedException {
// 创建一个包含5个元素的数组
Circle[] circles = { new Circle(2), new Circle(10), new Circle(8), new Circle(4), new Circle(12) };
System.out.println(Arrays.toString(circles));
// 排序
Arrays.sort(circles, (x, y) -> Integer.compare(x.getRadius(), y.getRadius()));
System.out.println(Arrays.toString(circles));
// 查找半径为 9 的圆
int index = Arrays.binarySearch(circles, 9, (x, y) -> ((Circle)x).getRadius() - (int)y);
System.out.println(index >=0 ? circles[index] : "没有找到半径为 9 的圆。");
// 查找半径为 10 的圆
index = Arrays.binarySearch(circles, 10, (x, y) -> ((Circle)x).getRadius() - (int)y);
System.out.println(index >=0 ? circles[index] : "没有找到半径为 10 的圆。");
// 拷贝数组
Circle[] circles2 = Arrays.copyOf(circles, circles.length);
System.out.println(Arrays.toString(circles2));
}
}
展开全部
留下你的邮箱,回头我写完发给你。
追答
邮箱中间加几个汉字,以免系统和谐。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.util.*;
class Circle {
public static void main(String[] args) {
int radius; int key1=9,key2=10;
int[] circle={2,10,8,4,12};
//数组排序
Arrays.sort(circle);
System.out.println("排序后:"+Arrays.toString(circle));
//在数组中查找
radius =Arrays.binarySearch(circle,key1);
if(radius>=0){
System.out.println("circle["+radius+"]="+key1);
}else{
System.out.println("没有在数组中找到"+key1);
}
radius =Arrays.binarySearch(circle,key2);
if(radius>=0){
System.out.println("circle["+radius+"]="+key2);
}else{
System.out.println("没有在数组中找到"+key2);
}
//拷贝
int[] copy =Arrays.copyOf(circle,circle.length);
System.out.println("copy="+Arrays.toString(copy));
}}
class Circle {
public static void main(String[] args) {
int radius; int key1=9,key2=10;
int[] circle={2,10,8,4,12};
//数组排序
Arrays.sort(circle);
System.out.println("排序后:"+Arrays.toString(circle));
//在数组中查找
radius =Arrays.binarySearch(circle,key1);
if(radius>=0){
System.out.println("circle["+radius+"]="+key1);
}else{
System.out.println("没有在数组中找到"+key1);
}
radius =Arrays.binarySearch(circle,key2);
if(radius>=0){
System.out.println("circle["+radius+"]="+key2);
}else{
System.out.println("没有在数组中找到"+key2);
}
//拷贝
int[] copy =Arrays.copyOf(circle,circle.length);
System.out.println("copy="+Arrays.toString(copy));
}}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询