java控制控制台里面输出的星号的移动

这是我最开始接触java时写的第一个java程序,很简单的一个程序,但却是我安卓开发之路的开始!希望以后能在安卓开发这条路上好好走下去!

新建java工程,实现利用1、2、3、5按键控制星号左移、下移、右移和上移。

实现效果如下:

1.运行程序


2.点击数字键3,点击enter确定,效果如下,星号右移一位:


3.点击数字键2,点击enter,效果如下,星号下移一位:


4.其他按键均类似;


1.新建Cell类,定义成员变量,实现构造方法和功能方法,代码如下:

package cellmove;


public class Cell {
int x;
int y;
public Cell(int x,int y){
this.x=x;
this.y=y;
}
public Cell(){
}
public void moveToRight(){
this.x++;
}
public void moveToLeft(){
this.x--;
}
public void moveToTop(){
this.y--;
}
public void moveToBelow(){
this.y++;
}
public int getx(){
return this.x;
}
public int gety(){
return this.y;
}
public void setx(int newx){
this.x=newx;
}
public void sety(int newy){
this.y=newy;
}
}

2.新建CellMove类,代码如下:

package cellmove;


import java.util.Scanner;


public class CellMove {


public static void main(String[] args) {
int width=5;
int height=5;
Cell cell=new Cell(0,0);
while(true){
Scanner scanner =new Scanner(System.in);
for(int i=0;i<height;i++){
for(int j=0;j<width;j++){
if(i==cell.gety()&&j==cell.getx()){
System.out.print("* ");
}
else
System.out.print("- ");
}
System.out.println();
}
int m1=scanner.nextInt();
if(m1==1&&cell.getx()>0){
cell.moveToLeft();
}
else if(m1==1&&cell.getx()==0){
System.out.println("对不起,星号已位于最左边,无法左移!");
}
else if(m1==2&&cell.gety()<height-1){
cell.moveToBelow();
}
else if(m1==2&&cell.gety()==height-1){
System.out.println("对不起,星号已位于最下边,无法下移!");
}
else if(m1==3&&cell.getx()<width-1){
cell.moveToRight();
}
else if(m1==3&&cell.getx()==width-1){
System.out.println("对不起,星号已位于最右边,无法右移!");
}
else if(m1==5&&cell.gety()>0){
cell.moveToTop();
}
else if(m1==5&&cell.gety()==0){
System.out.println("对不起,星号已位于最上边,无法上移!");
}
}
}
}


这样就初步实现了星号的位移;


总结:实现的功能虽然简单,但正是因为实现这些简单地功能,以后才能更好地实现更加复杂的功能,这应该就是所谓的基础吧!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章