2014-09-23 69 views
1

我的老师已经要求我使用图形类在Java中绘制一个对象。这可能是任何事情,但那很无聊,所以我想画一些更复杂的东西。这是来自天际的舵手,而我要离开的画面位于here。无论如何(因为我们在计算机科学1的第三周),我想知道绘制弧线,然后用颜色填充它们,例如剑上的血红色标记。她是我到目前为止有:如何使用图形类在Java中绘制复杂对象?

import java.awt.*; 
import javax.swing.*; 

class MainPanel extends JPanel { 

public void paintComponent(Graphics g) {      
Color bloodRed = new Color(187, 10, 30); 
g.setColor(bloodRed); 
g.fillRect(0, 0, 200, 200); 
} 
} 

public class Lab08 extends JFrame { 

public static void main(String[] args) { 

JFrame frame = new JFrame("Graphics"); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
frame.getContentPane().add(new MainPanel(), BorderLayout.CENTER); 
frame.setVisible(true); 
} 
} 

请不要说“请你的老师寻求帮助,这就是为什么他的存在”,因为答案是,我不能。他字面上在他的房间里有一个标志,上面写着“Google It”。

+2

http:// d ocs.oracle.com/javase/7/docs/api/java/util/Collections.html#shuffle%28java.util.List%29 – 2014-09-23 22:29:31

回答

0

将字符串放入数组中,然后随机访问数组的索引。

+0

对不起,我不知道数组是什么,更不用说写一个数组了。 – Antidisestablishmentarianism 2014-09-23 22:32:11

+1

@SomeRandomGuy如果你不知道数组是什么,那么你需要阅读关于Java的介绍性书籍。 http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html – 2014-09-23 22:33:39

+0

感谢您的教程 – Antidisestablishmentarianism 2014-09-24 01:31:19

2

假设你已经拿到了进入的话,你可以这样做:

public static void main(String[] args) 
{ 
    String[] enteredWords = {"here", "there", "everywhere"}; 
    List<String> randomWords = Arrays.asList(enteredWords); 
    Collections.shuffle(randomWords); 
    System.out.println(randomWords); 
} 
0

您也可以使用扫描仪类中使用自定义的输入进行清理整顿

Scanner scan=new Scanner(System.in); 
for(int i=0;i<5;i++) 
{ 
System.out.println("Enter a character"); 
String someValue[i]=scan.nextLine(); 
} 

使用循环迭代过程并将其存储在数组中,直到给出所有输入并将其随机化为止

List<String> characters= Arrays.asList(someValue); 
Collections.shuffle(characters); 
System.out.println(characters);