求高手写个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型数组深拷贝到另一个数组中,并打印新的结果。 展开
 我来答
yinfengnong
推荐于2018-04-11 · TA获得超过5619个赞
知道大有可为答主
回答量:2344
采纳率:89%
帮助的人:2290万
展开全部

代码如下:

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));
}
}
神牛码农
2018-04-08 · 用技术行走在移动互联网时代
神牛码农
采纳数:297 获赞数:1178

向TA提问 私信TA
展开全部
留下你的邮箱,回头我写完发给你。
追答
邮箱中间加几个汉字,以免系统和谐。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
洋芋粑粑糖
2018-04-09
知道答主
回答量:1
采纳率:0%
帮助的人:880
展开全部
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));
}}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式