重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
import java.util.Scanner;
公司主营业务:成都网站制作、网站设计、外贸网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出西青免费做网站回馈大家。
/**
* 计算球的体积
*
* @author young
*
*/
public class Volume {
public static void main(String[] args) {
System.out.print("请输入r:");
Scanner reader = new Scanner(System.in);
double r = 0, v = 0;
r = reader.nextDouble();
v = 4 * 3.14159 / 3 * r * r * r;
System.out.println("球体积为:" + String.format("%.2f", v));
}
}
你这个,从第4个就不对了
你可以这样,
a). 大小为30的数组,元素全为1
b). 循环判断元素如果为1就把球的计数变量+1,否则跳过;
c). 若计数变量为13,就打印下标,元素置为0,计数变量置0;
d). 循环完数组一次,就把数组元素求和,若为15就停止循环;
c). 这时输出的15个下标+1就是你要染成红色的球
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class ShowGraphics extends JFrame implements ActionListener {
JFrame frame = new JFrame("Graphics frame");
DPanel dp = new DPanel();
JPanel panel = new JPanel();
JButton b1 = new JButton("up");
JButton b2 = new JButton("down");
Graphics g;//---------
public ShowGraphics() {
frame.setLayout(new BorderLayout());
frame.add(panel, BorderLayout.SOUTH);
frame.add(dp, BorderLayout.CENTER);
frame.setSize(800, 600);
frame.setVisible(true);
panel.setLayout(new FlowLayout());
panel.add(b1);
panel.add(b2);
b1.addActionListener(this); // add color and action lisener
b2.addActionListener(this);
}
public class DPanel extends JPanel {
public void paintComponent(Graphics g) {
// int x;
if (ShowGraphics.this.g == null) {//---------
ShowGraphics.this.g = g;//---------
}//---------
g.drawLine(350, 500, 350, 600);
g.drawOval(300, 400, 100, 100);
g.setColor(Color.RED);
g.fillOval(300, 400, 100, 100);
dp.repaint();
}
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == b1) {
g.drawOval(300 + 5, 400 + 10, 100, 100);
g.drawLine(350 + 5, 500 + 10, 350, 600);
// g.fillOval(300+5,400+10,100,100);
}
if (e.getSource() == b2) {
g.drawOval(300 - 5, 400 + 10, 100, 100);
g.drawLine(350 - 5, 500 + 10, 350, 600);
// g.fillOval(300-5,400+10,100,100);
}
dp.repaint();
}
public static void main(String[] args) {
ShowGraphics sg = new ShowGraphics();
}
}
按照题目要求编写的Circle类的Java程序如下(文件名Circle.java)
public class Circle{
private double radius;
Circle(){
radius=0;
}
Circle(double r){
radius=r;
}
double getRadius(){
return radius;
}
double getLength(){
return 2*Math.PI*radius;
}
double getArea(){
return Math.PI*radius*radius;
}
void disp(){
System.out.println("圆的半径为"+getRadius());
System.out.println("圆的周长为"+getLength());
System.out.println("圆的面积为"+getArea());
}
}
下面是Circle类的测试类Test(文件名Test.java 要运行需要和Circle.java放在同一包内)
public class Test{
public static void main(String[] args){
Circle c=new Circle(2.5);
c.disp();
}
}
帮你改了一下。
你要画在panel上,然后frame.add(panel)就能显示。
是不是和applet搞混了,applet复写一些方法就能显示,但现在你编的是java gui
import java.awt.*;
import java.awt.Event.*;
import javax.swing.*; //import javax.swing.Timer;
import java.awt.BasicStroke;
//import java.util.Date;
//import java.text.*;
//import java.util.*;
public class TestGui {
public void paint(Graphics g) {
Graphics2D a2d = (Graphics2D) g;
int x = 120, y = 90, width = 150, height = 150;
a2d.setColor(Color.red);
a2d.setStroke(new BasicStroke(3.0f)); // 设置线条宽度,3.0即线的宽度
a2d.drawOval(x, y, width, height);
}
public static void main(String[] args) {
JFrame frame = new JFrame();
// frame.add(new paint(),BorderLayout.CENTER);
frame.setSize(500, 500);
frame.setLocation(200, 200);
frame.setVisible(true);
Panel p = new Panel();
frame.add(p);
// frame.paint(null);
// TODO code application logic here
}
}
class Panel extends JPanel {
// 重新覆盖paint方法
public void paint(Graphics g) {
super.paint(g);
Graphics2D a2d = (Graphics2D) g;
int x = 120, y = 90, width = 150, height = 150;
a2d.setColor(Color.red);
a2d.setStroke(new BasicStroke(3.0f)); // 设置线条宽度,3.0即线的宽度
a2d.drawOval(x, y, width, height);
}
}