* 文件名:Operation.java 2014-1-2 下午洞枣锋3:06:37
* @author Administrator
*/
package cc.icoc.javaxu.action
import java.util.ArrayList
import java.util.Scanner
import cc.icoc.javaxu.datas.StudentInfo
/**
* @author 许仕永
* 创建时间: 2014 2014-1-2 下午3:06:37
*/
public class Operation
{
int stuNo,stuAge
String stuName,stuClass,stuSex
ArrayList<StudentInfo>list
/**程序入口
* @param args
*/
public static void main(String[] args)
{
/纳晌/ TODO Auto-generated method stub
new Operation().operation()
}
private int inputInt()
{
Scanner scanner = new Scanner(System.in)
return scanner.nextInt()
}
private String inputStr()
{
Scanner scanner = new Scanner(System.in)
return scanner.nextLine()
}
private void operation()
{
// TODO Auto-generated method stub
if(list == null)
{
list = new ArrayList<StudentInfo>()
}
while(true)
{
System.out.println("\t\t\t学生信息管理系统\n")
System.out.println("1.信息查阅")
System.out.println("2.信息查询")
System.out.println("3.信息录入")
System.out.println("4.退出系统"岩薯)
int what = inputInt()
if ( what == 1 )
{
getInfo()
} else if ( what == 2 )
{
allSerach()
} else if ( what == 3 )
{
inputInfo()
} else if( what == 4 )
{
System.out.println("已经退出系统")
System.exit(0)
}
}
}
/**
* 获取全部学生的信息列表
*/
private void getInfo()
{
if(!list.isEmpty())
{
for ( int i = 0i <list.size()i++ )
{
System.out.println(list.get(i))
}
}
}
/**
* 执行查找
*/
private void allSerach()
{
System.out.println("1.输入学号进行查询")
System.out.println("2.输入姓名进行查询")
int what = inputInt()
if(what == 1)
{
System.out.println("请输入学号:")
search(inputInt())
}
else
{
System.out.println("请输入姓名:")
search(inputStr())
}
}
/**
* 按学生姓名查询学生信息
* @param name 学生姓名
*/
private StudentInfo search(String name)
{
for ( int i = 0i <list.size()i++ )
{
if(list.get(i).getStuName().equals(name))
{
System.out.println(list.get(i))
return list.get(i)
}
}
System.out.println("未查询到该名字的学生")
return null
}
/**
* 按学号查询学生信息
* @param id 学号
*/
private StudentInfo search(int id)
{
for ( int i = 0i <list.size()i++ )
{
if(list.get(i).getStuNo()==id)
{
System.out.println(list.get(i))
return list.get(i)
}
}
System.out.println("未查询到该学号的学生")
return null
}
/**
* 录入学生信息
*/
private void inputInfo()
{
try
{
System.out.print("请输入学生学号:\n")
stuNo = inputInt()
System.out.print("请输入学生姓名:\n")
stuName = inputStr()
System.out.print("请输入学生性别:\n")
stuSex = inputStr()
System.out.print("请输入学生年龄:\n")
stuAge = inputInt()
System.out.print("请输入学生班级:\n")
stuClass = inputStr()
list.add(new StudentInfo(stuNo, stuAge, stuName, stuSex, stuClass))
} catch (Exception e)
{
// TODO: handle exception
System.out.println("不允许为空,请重新输入")
}
}
}
package cc.icoc.javaxu.action
import java.util.ArrayList
import java.util.List
import java.util.Scanner
public class Stu
{
int countStu = 0
int sum = 0
int avg = 0
List<StuBean>list = new ArrayList<Stu.StuBean>()
public static void main(String[] args)
{
new Stu().go()
}
private void go()
{
A:while(true)
{
//构造实体Bean来存储学生成绩
StuBean bean = new StuBean()
System.out.println("请输入成绩:")
System.out.println("语文:")
bean.setYuwen(scanner())
System.out.println("数学:")
bean.setMath(scanner())
//获取英语成绩
System.out.println("英语:")
bean.setEnglish(scanner())
//存入容器
list.add(bean)
for ( int i = 0i <list.size()i++ )
{
sum += list.get(i).english+list.get(i).math+list.get(i).yuwen
}
avg = sum / (3*list.size())
System.out.println("当前有"+list.size()+"条学生记录,所有学生总分="+sum+"平均分为"+avg)
//输入y继续录入学生信息,输入x退出
System.out.println("\n已成功录入一个学生的数据,是否继续/退出(y/x)")
if("x".equals(scannerString()))
break A
}
}
/**输入*/
private int scanner()
{
Scanner scanner = new Scanner(System.in)
return scanner.nextInt()
}
/**输入*/
private String scannerString()
{
Scanner scanner = new Scanner(System.in)
return scanner.nextLine()
}
class StuBean
{
int math
int yuwen
int english
public int getMath()
{
return math
}
public void setMath(int math)
{
this.math = math
}
public int getYuwen()
{
return yuwen
}
public void setYuwen(int yuwen)
{
this.yuwen = yuwen
}
public int getEnglish()
{
return english
}
public void setEnglish(int english)
{
this.english = english
}
}
}
/**
* 文件名:StudentInfo.java 2014-1-2 下午3:07:29
* @author Administrator
*/
package cc.icoc.javaxu.datas
/**
* @author 许仕永
* 创建时间: 2014 2014-1-2 下午3:07:29
*/
public class StudentInfo
{
int stuNo,stuAge
String stuName,stuSex,stuClass
public StudentInfo(int stuNo, int stuAge, String stuName, String stuSex, String stuClass)
{
super()
this.stuNo = stuNo
this.stuAge = stuAge
this.stuName = stuName
this.stuSex = stuSex
this.stuClass = stuClass
}
public int getStuNo()
{
return stuNo
}
public void setStuNo(int stuNo)
{
this.stuNo = stuNo
}
public int getStuAge()
{
return stuAge
}
public void setStuAge(int stuAge)
{
this.stuAge = stuAge
}
public String getStuName()
{
return stuName
}
public void setStuName(String stuName)
{
this.stuName = stuName
}
public String getStuSex()
{
return stuSex
}
public void setStuSex(String stuSex)
{
this.stuSex = stuSex
}
public String getStuClass()
{
return stuClass
}
public void setStuClass(String stuClass)
{
this.stuClass = stuClass
}
@Override
public String toString()
{
// TODO Auto-generated method stub
String s = "学号:"+getStuNo()+"\t姓名:"+getStuName()+" \t性别:"+getStuSex()+"\t年龄:"+getStuAge()+"\t班级:"+getStuClass()
return s
}
}
贪吃蛇游戏 望采纳import java.awt.Button
import java.awt.Color
import java.awt.GridLayout
import java.awt.Point
import java.awt.event.KeyEvent
import java.awt.event.KeyListener
import java.util.*
import javax.swing.JFrame
import javax.swing.JOptionPane
public class Snake extends JFrame implements KeyListener{
int Count=0
Button[][] grid = new Button[20][20]
ArrayList<Point>snake_list=new ArrayList<Point>()
Point bean=new Point(-1,-1)//保存随机豆子【坐标】
int Direction = 1//方向标志 1:上2:下 3:左 4:右
//构造方法
public Snake()
{
//窗体初始化
this.setBounds(400,300,390,395)
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
GridLayout f=new GridLayout(20,20)
this.getContentPane().setBackground(Color.gray)
this.setLayout(f)
//初始化20*20个按钮
for(int i=0i<20i++)
for(int j=0j<20j++)
{
grid[i][j]=new Button()
this.add(grid[i][j])
grid[i][j].setVisible(false)
grid[i][j].addKeyListener(this)
grid[i][j].setBackground(Color.blue)
}
//蛇体初始化
grid[10][10].setVisible(true)
grid[11][10].setVisible(true)
grid[12][10].setVisible(true)
grid[13][10].setVisible(true)
grid[14][10].setVisible(true)
//在动态数组中保存蛇体按钮坐毁歼蔽标【行列】信息
snake_list.add(new Point(10,10))
snake_list.add(new Point(11,10))
snake_list.add(new Point(12,10))
snake_list.add(new Point(13,10))
snake_list.add(new Point(14,10))
this.rand_bean()
this.setTitle("总分:0")
this.setVisible(true)
}
//该方法随机一个豆子,且不在蛇体上,并使豆子可见
public void rand_bean(){
Random rd=new Random()
do{
bean.x=rd.nextInt(20)//纤州行
bean.y=rd.nextInt(20)//列
}while(snake_list.contains(bean))
grid[bean.x][bean.y].setVisible(true)
grid[bean.x][bean.y].setBackground(Color.red)
}
//判断拟增蛇头是否与自身有碰撞改含
public boolean is_cross(Point p){
boolean Flag=false
for(int i=0i<snake_list.size()i++){
if(p.equals(snake_list.get(i) )){
Flag=truebreak
}
}
return Flag
}
//判断蛇即将前进位置是否有豆子,有返回true,无返回false
public boolean isHaveBean(){
boolean Flag=false
int x=snake_list.get(0).x
int y=snake_list.get(0).y
Point p=null
if(Direction==1)p=new Point(x-1,y)
if(Direction==2)p=new Point(x+1,y)
if(Direction==3)p=new Point(x,y-1)
if(Direction==4)p=new Point(x,y+1)
if(bean.equals(p))Flag=true
return Flag
}
//前进一格
public void snake_move(){
if(isHaveBean()==true){//////////////有豆子吃
Point p=new Point(bean.x,bean.y)//【很重要,保证吃掉的是豆子的复制对象】
snake_list.add(0,p)//吃豆子
grid[p.x][p.y].setBackground(Color.blue)
this.Count++
this.setTitle("总分:"+Count)
this.rand_bean() //再产生一个豆子
}else{///////////////////无豆子吃
//取原蛇头坐标
int x=snake_list.get(0).x
int y=snake_list.get(0).y
//根据蛇头坐标推算出拟新增蛇头坐标
Point p=null
if(Direction==1)p=new Point(x-1,y)//计算出向上的新坐标
if(Direction==2)p=new Point(x+1,y)//计算出向下的新坐标
if(Direction==3)p=new Point(x,y-1)//计算出向左的新坐标
if(Direction==4)p=new Point(x,y+1)//计算出向右的新坐标
//若拟新增蛇头碰壁,或缠绕则游戏结束
if(p.x<0||p.x>19|| p.y<0||p.y>19||is_cross(p)==true){
JOptionPane.showMessageDialog(null, "游戏结束!")
System.exit(0)
}
//向蛇体增加新的蛇头坐标,并使新蛇头可见
snake_list.add(0,p)
grid[p.x][p.y].setVisible(true)
//删除原蛇尾坐标,使蛇尾不可见
int x1=snake_list.get(snake_list.size()-1).x
int y1=snake_list.get(snake_list.size()-1).y
grid[x1][y1].setVisible(false)
snake_list.remove(snake_list.size()-1)
}
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_UP &&Direction!=2) Direction=1
if(e.getKeyCode()==KeyEvent.VK_DOWN &&Direction!=1) Direction=2
if(e.getKeyCode()==KeyEvent.VK_LEFT &&Direction!=4) Direction=3
if(e.getKeyCode()==KeyEvent.VK_RIGHT &&Direction!=3) Direction=4
}
@Override
public void keyReleased(KeyEvent e) { }
@Override
public void keyTyped(KeyEvent e) { }
public static void main(String[] args) throws InterruptedException {
Snake win=new Snake()
while(true){
win.snake_move()
Thread.sleep(300)
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)