问题描述

  用户输入圆的半径,计算并显示圆的面积

代码分享

/**
* @author hpu-gs
* 2015/11/25
*/
public class Circle {
public static Double r;
public static Double m; /**
* 计算圆的面积
*/
public static void main(String[] args) {
System.out.print("请输入圆的半径:");
Scanner in = new Scanner(System.in);
r = in.nextDouble();
m = Math.PI*r*r;
System.out.println("圆的面积是:"+m);
EventQueue.invokeLater(new Runnable() {//事物分配线程,进行显示窗口
@Override
public void run() {
JFrame frame = new SimpleFrame();
frame.setTitle("求圆面积");//设置窗口的左上角标题
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭窗口事件
Toolkit kit = Toolkit.getDefaultToolkit();
Dimension screenSize = kit.getScreenSize();
int screenWidth = screenSize.width;//获取屏幕的宽度
int screenhHeight = screenSize.height;//获取屏幕的长度
frame.setLocation(screenWidth/2-250, screenhHeight/2-100);//设置窗口在屏幕上的显示位置
Image image = new ImageIcon("Image/image.png").getImage();//设置窗口的左上角图标
frame.setIconImage(image);
frame.setVisible(true);//启动显示窗口
}
});
} } //设计窗口
class SimpleFrame extends JFrame{
private static final int DEFAULT_WIDTH = 300;
private static final int DEFAULT_HEIGHE = 200;
public SimpleFrame(){
add(new NotHelloWordComponent());//将文本填充到窗口
pack();//调整窗口大小
// setSize(DEFAULT_WIDTH, DEFAULT_HEIGHE);//设置窗口的大小
}
} //在窗口中显示文本信息
class NotHelloWordComponent extends JComponent{
public static final int MESSAGE_X = 120;
public static final int MESSAG_Y = 100; private static final int DEFAULT_WIDTH = 500;
private static final int DEFAULT_HEIGHE = 200;
public void paintComponent(Graphics g){
g.drawString("半径为:"+new Circle().r+"的圆,面积为:"+new Circle().m, MESSAGE_X, MESSAG_Y);//在窗口中显示文字
}
@Override
public Dimension getPreferredSize() {
return new Dimension(DEFAULT_WIDTH, DEFAULT_HEIGHE);//返回组件的首选大小
}
}

JAVA基础代码分享--求圆面积的更多相关文章

  1. JAVA基础代码分享--学生成绩管理

    问题描述: 从键盘读入学生成绩,找出最高分,并输出学生成绩等级. 成绩>=最高分-10  等级为’A’   成绩>=最高分-20  等级为’B’ 成绩>=最高分-30  等级为’C’ ...

  2. JAVA基础代码分享--DVD管理

    问题描述 为某音像店开发一个迷你DVD管理器,最多可存6张DVD,实现碟片的管理. 管理器具备的功能主要有: 1.查看DVD信息. 菜单选择查看功能,展示DVD的信息. 2.新增DVD信息 选择新增功 ...

  3. JAVA基础代码分享--模拟人机猜拳系统

    问题描述: 一.主要功能: .电脑与人互动,实现“剪刀.石头.布”的游戏: 1.1 角色登陆: ******************** ***欢迎进入猜拳游戏*** **************** ...

  4. 如何学习java?Java基础知识点分享

    面对未知的行业,人们的第一反应应该是:拒绝踏入.因为学习真的是一个痛苦的过程.想要真正了解一个行业,熟知一个行业,并熟练掌握某一技术,是真的需要时间和精力的.在学习Java基础知识期间,千锋小编疯狂为 ...

  5. java 基础代码

    /** * Created by y0n on 2017/4/17. * 1.输出控制台传递的默认参数 */public class JavaDay001_1 { public static void ...

  6. Java基础12-数组求最大值以及排序

    1.求最大值 实例:小明买手机,询问了4家店的价格,分别是2800,2900,2600,3000,输出最低价 正确代码:类似打擂台,将数组第一个值赋给最小值,然后依次比较 import java.ut ...

  7. nuxt项目打包上线,以及nuxt项目基础代码分享

    nuxt的项目部署到线上环境,有多种方法,这里分享我使用的方法,一步步照着配置,就可以配置成功~ (1)项目先执行npm run build 打包好   (2)服务器安装node 和pm2依赖 服务器 ...

  8. [Java基础]代码块及java反编译

    块的作用域:   块(即复合语句)是指一对花括号括起来的若干条简单的java语句.块确定了变量的作用域.一个块可以嵌套在另一个块中.但是,在嵌套的两个块中声明同名的变量时应注意,块中变量申明在块外变量 ...

  9. Java基础学习分享

    一.Java介绍 Java是由原Sun公司(现已被甲骨文公司收购)于1991年开发的编程语言,初衷是为智能家电的程序设计提供一个分布式代码系统.为了使整个系统与平台无关,采用了虚拟机器码方式,虚拟机内 ...

随机推荐

  1. 使用mybatis-generator生成代码

    文档地址: ​http://mbg.cndocs.tk/index.html ​ 以下是一个简单的配置内容. 一.在maven配置文件中添加mybatis-generator插件 1 2 3 4 5 ...

  2. Java json串生成及转bean

      package com; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import j ...

  3. SQL 存储过程 传入数组参数

    今天在做统计数据的时候,传入数组导致数据不显示.解决方式和大家分享一下: --参数@CompanyName='北京,天津,上海' DECLARE @PointerPrev int     DECLAR ...

  4. 高级sql注入

    1. 避开输入过滤 输入过滤存在于外部和内部,外部属于web应用防火墙WAF,入侵防御系统IPS,入侵检测系统IDS,内部属于代码中对输入进行过滤 过滤select,insert等sql关键字和' | ...

  5. angularjs provider 供应商服务

    今天学习了angularjs的provider的供应商服务,写了个例子(自定义供应商服务,也可使用angularjs内部提供的服务) var starterApp = angular.module(' ...

  6. 关于IoCallDriver使用的疑惑

    #pragma PAGEDCODE NTSTATUS HelloDDKRead(IN PDEVICE_OBJECT pDevObj, IN PIRP pIrp) { KdPrint(("Dr ...

  7. jdk 配置环境变量 解决无法加载主类问题

    默认安装路径 我的电脑鼠标右键→属性→点击“高级”选项卡点击“环境变量” 系统环境 点击“新建”变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0(以JD ...

  8. ORACLE冷备份与恢复

    ORACLE备份和恢复有三种方式: (1)数据泵(expdp/impdp) (2)冷备份 (3)RMAN备份 就分类而言,(1)和(2)统有称为"冷"备份,(3)称为"热 ...

  9. 为首次部署MongoDB做好准备:容量计划和监控

    如果你已经完成了自己新的MongoDB应用程序的开发,并且现在正准备将它部署进产品中,那么你和你的运营团队需要讨论一些关键的问题: 最佳部署实践是什么? 为了确保应用程序满足它所必须的服务层次我们需要 ...

  10. 编译可在Nexus5上运行的CyanogenMod13.0 ROM(基于Android6.0)

    编译可在Nexus5上运行的CyanogenMod13.0 ROM (基于Android6.0) 作者:寻禹@阿里聚安全 前言 下文中无特殊说明时CM代表CyanogenMod的缩写. 下文中说的“设 ...