记java起步小程序

如今已经慢慢步入了java的学习中,在这段时间的学习中,真的感觉C和java是不一样的两种语言,可能某些语法是一样的,但是思路真的不一样。

下面先把简单华容道的代码贴出来



public class wayMove extends makePicture{
String Up="上";
String Down="下";
String Left="左";
String Right="右";
makePicture x=new makePicture();

public wayMove(){

}
public void way(String onePerson,String newDirection){
int n,m;
for (n=0;n<5;n++)
{
for (m=0;m<4;m++)
{
if (x.heros[n][m].equals(onePerson))
{
if (x.heros[n][m]=="马"||x.heros[n][m]=="赵"||x.heros[n][m]=="张"||x.heros[n][m]=="黄")
{
if (Down.equals(newDirection))
{
if(n+2<=4&&n+1<=4&&x.heros[n+2][m]=="    ")
{
x.heros[n+2][m]=x.heros[n+1][m];
x.heros[n+1][m]=x.heros[n][m];
x.heros[n][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Up.equals(newDirection))
{
if(n-2>=0&&n-1>=0&&x.heros[n-2][m]=="    ")
{
x.heros[n-2][m]=x.heros[n-1][m];
x.heros[n-1][m]=x.heros[n][m];
x.heros[n][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Left.equals(newDirection))
{
if(m-1>=0&&x.heros[n][m-1]=="    "&&x.heros[n+1][m+1]=="    ")
{
x.heros[n][m-1]=x.heros[n][m];
x.heros[n+1][m+1]=x.heros[n+1][m];
x.heros[n][m]="    ";
x.heros[n+1][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Right.equals(newDirection))
{
if(m+1<=3&&x.heros[n][m+1]=="    "&&x.heros[n+1][m+1]=="    ")
{
x.heros[n][m+1]=x.heros[n][m];
x.heros[n+1][m+1]=x.heros[n+1][m];
x.heros[n][m]="    ";
x.heros[n+1][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
}
else if (x.heros[n][m]=="曹")
{
if (Down.equals(newDirection))
{
if(n+2<=4&&n+1<=4&&x.heros[n+2][m]=="    "&&x.heros[n+2][m+1]=="    ")
{
x.heros[n+2][m]=x.heros[n][m];
x.heros[n+2][m+1]=x.heros[n][m+1];
x.heros[n][m]="    ";
x.heros[n][m+1]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Up.equals(newDirection))
{
if(n-1>=0&&x.heros[n-1][m]=="    "&&x.heros[n-1][m+1]=="    ")
{
x.heros[n-1][m]=x.heros[n][m];
x.heros[n-1][m+1]=x.heros[n][m+1];
x.heros[n][m]=x.heros[n+1][m];
x.heros[n][m+1]=x.heros[n+1][m+1];
x.heros[n+1][m]="    ";
x.heros[n+1][m+1]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Left.equals(newDirection))
{
if(m-1>=0&&x.heros[n][m-1]=="    "&&x.heros[n+1][m-1]=="  ")
{
x.heros[n][m-1]=x.heros[n][m];
x.heros[n][m]=x.heros[n][m+1];
x.heros[n+1][m-1]=x.heros[n+1][m];
x.heros[n+1][m]=x.heros[n+1][m+1];
x.heros[n][m+1]="    ";
x.heros[n+1][m+1]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Right.equals(newDirection))
{
if (m+2<=3&&x.heros[n][m+2]=="    "&&x.heros[n+1][m+2]=="    ")
{
x.heros[n][m+2]=x.heros[n][m+1];
x.heros[n][m+1]=x.heros[n][m];
x.heros[n+1][m+2]=x.heros[n+1][m+1];
x.heros[n+1][m+1]=x.heros[n+1][m];
x.heros[n][m]="    ";
x.heros[n+1][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
}
else if (x.heros[n][m]=="关")
{

if (Down.equals(newDirection))
{
if (n+1<=4&&x.heros[n+1][m]=="    "&&x.heros[n+1][m+1]=="    ")
{
x.heros[n+1][m]=x.heros[n][m];
x.heros[n+1][m+1]=x.heros[n][m+1];
x.heros[n][m]="    ";
x.heros[n][m+1]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Up.equals(newDirection))
{
if (n-1>=0&&x.heros[n-1][m]=="    "&&x.heros[n-1][m+1]=="    ")
{
x.heros[n-1][m]=x.heros[n][m];
x.heros[n-1][m+1]=x.heros[n][m+1];
x.heros[n][m]="    ";
x.heros[n][m+1]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Left.equals(newDirection))
{
if (m-1>=0&&x.heros[n][m-1]=="    ")
{
x.heros[n][m-1]=x.heros[n][m];
x.heros[n][m]=x.heros[n][m-1];
x.heros[n][m-1]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Right.equals(newDirection))
{
if (m+2<=3&&x.heros[n][m+2]=="    ")
{
x.heros[n][m+2]=x.heros[n][m+1];
x.heros[n][m+1]=x.heros[n][m];
x.heros[n][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
}
else if (x.heros[n][m]=="甲"||x.heros[n][m]=="乙"||x.heros[n][m]=="丙"||x.heros[n][m]=="丁")
{
if (Down.equals(newDirection))
{
if(n+1<=4&&x.heros[n+1][m]=="    ")
{
x.heros[n+1][m]=x.heros[n][m];
x.heros[n][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Up.equals(newDirection))
{
if (n-1>=0&&x.heros[n-1][m]=="    ")
{
x.heros[n-1][m]=x.heros[n][m];
x.heros[n][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Left.equals(newDirection))
{
if (m-1>=0&&x.heros[n][m-1]=="    ")
{
x.heros[n][m-1]=x.heros[n][m];
x.heros[n][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
else if(Right.equals(newDirection))
{
if (m+1<=3&&x.heros[n][m+1]=="    ")
{
x.heros[n][m+1]=x.heros[n][m];
x.heros[n][m]="    ";
break;
}
else
{
System.out.println("不能移动,请重新输入");
break;
}
}
}
}
}
}
new printPicture(x);
}
}




public class printPicture extends makePicture {
int rows;
int cols;
public printPicture(makePicture zy){
for (rows=0;rows<5;rows++)
{
for (cols=0;cols<4;cols++)
System.out.print(zy.heros[rows][cols]);
System.out.println();
}
}
}






public class peopleHero{
String[][] heros=new String[5][4];
String Ma="马";
String Chao="超";
String Zhao="赵";
String Yun="云";
String Zhang="张";
String Fei="飞";
String Huang="黄";
String Zhong="忠";
String Guan="关";
String Yu="羽";
String Cao="曹";
String Ca="操";
String Jia="甲";
String Yi="乙";
String Bing="丙";
String Ding="丁";

public peopleHero(){

}

public String getMa() {
return Ma;
}
public String getChao() {
return Chao;
}
public String getZhao() {
return Zhao;
}
public String getYun() {
return Yun;
}
public String getZhang() {
return Zhang;
}
public String getFei() {
return Fei;
}
public String getGuan() {
return Guan;
}
public String getYu() {
return Yu;
}
public String getHuang() {
return Huang;
}
public String getZhong() {
return Zhong;
}
public String getCao() {
return Cao;
}
public String getCa() {
return Ca;
}
public String getJia() {
return Jia;
}
public String getYi() {
return Yi;
}
public String getBing() {
return Bing;
}
public String getDing() {
return Ding;
}
}






public class makePicture extends peopleHero {

peopleHero zy=new peopleHero();

public makePicture(){
heros[0][0]=zy.Ma;
heros[0][1]=zy.Cao;
heros[0][2]=zy.Ca;
heros[0][3]=zy.Zhang;
heros[1][0]=zy.Chao;
heros[1][1]=zy.Cao;
heros[1][2]=zy.Ca;
heros[1][3]=zy.Fei;
heros[2][0]=zy.Zhao;
heros[2][1]=zy.Guan;
heros[2][2]=zy.Yu;
heros[2][3]=zy.Huang;
heros[3][0]=zy.Yun;
heros[3][1]=zy.Bing;
heros[3][2]=zy.Ding;
heros[3][3]=zy.Zhong;
heros[4][0]=zy.Jia;
heros[4][1]="    ";
heros[4][2]="    ";
heros[4][3]=zy.Yi;
}
}


import java.util.Scanner;
public class HuaRongDao {


public static void main(String[] args) {
Scanner input=new Scanner(System.in);
makePicture zy=new makePicture(); //初始位置
printPicture xx=new printPicture(zy); //显示初始界面
wayMove m=new wayMove();
while(true){
System.out.println("输入人物和移动方向:");
String person=input.nextLine(); //输入的是英雄第一个姓
String direction=input.nextLine(); //输入方向
m.way(person,direction); //如果可以移动,显示移动后的界面;如果不可以移动,显示无法移动
}


}
}


老师,我自己改了些要求,我输入的是英雄的第一个姓,然后再回车输入方向显示结果









然后现在是有个问题,输入可以移动,而且也显示移动后的界面,但是却同样会输出一句“不能移动,请重新移动”,麻烦老师看一下


程序中如果有什么需要改进的,也请老师指出。


麻烦老师,谢谢


下面的文字哦,是我向我们java老师发的邮箱问的问题,我也一起移过来了,现在先不说这个。

在写这个的过程中。真的是要明白我们是为什么对象而写,对象要有什么功能,属性,之后实现也不是很难,而且更深的感受继承的应用。


然后今天又写了个简单的连连看,还是超级笨拙的连连看。


简单连连看

 

 

输入需要消除的汉字,有两个一样连一块的情况下即可消除。

 

可用二维数组完成。10*10

 

需要的类

 

存储汉字的类,判断汉字上下左右的类

 

主要功能:消除思路

根据目标汉字,对数组进行遍历,找个这个汉字后

依次和上下左右的汉字比较,如何有相同的,直接消除,变为空格(4个空格)

还是要注意越界问题。应该会有i-1 等等如此 越界问题需要注意。

 

 

 

public class judgeDirection {

String Up="";

String Down="";

String Left="";

String Right="";

wordMany zy=new wordMany();

public judgeDirection(){

}

public void remove(String goalWord) {

int i,j;

/*现在就开始写主要的功能语句*/

for (i=0;i<10;i++)

{

for(j=0;j<10;j++)

{

if (zy.word[i][j].equals(goalWord))

{

if (i-1>=0)

{

if(zy.word[i-1][j].equals(zy.word[i][j]))

{

zy.word[i-1][j]="    ";

zy.word[i][j]="    ";

break;

}

}

else if(j+1<=9)

{

if(zy.word[i][j+1].equals(zy.word[i][j]))

{

zy.word[i][j+1]="    ";

zy.word[i][j]="    ";

break;

}

}

else if(i+1<=9)

{

if(zy.word[i+1][j].equals(zy.word[i][j]))

{

zy.word[i+1][j]="    ";

zy.word[i][j]="    ";

break;

}

}

else if(j-1>=0)

{

if(zy.word[i][j-1].equals(zy.word[i][j]))

{

zy.word[i][j]="    ";

zy.word[i][j-1]="    ";

break;

}

}

}

}

}

new printUI(zy);

}

}

 

 

public class wordMany {

String[][] word=new String[10][10];

public wordMany(){

word[0][0]="";

word[0][1]="";

word[0][2]="";

word[0][3]="";

word[0][4]="";

word[0][5]="";

word[0][6]="";

word[0][7]="";

word[0][8]="";

word[0][9]="";

word[1][0]="";

word[1][1]="";

word[1][2]="";

word[1][3]="";

word[1][4]="";

word[1][5]="";

word[1][6]="";

word[1][7]="";

word[1][8]="";

word[1][9]="";

word[2][0]="";

word[2][1]="";

word[2][2]="";

word[2][3]="";

word[2][4]="";

word[2][5]="";

word[2][6]="";

word[2][7]="";

word[2][8]="";

word[2][9]="";

word[3][0]="";

word[3][1]="";

word[3][2]="";

word[3][3]="";

word[3][4]="";

word[3][5]="";

word[3][6]="";

word[3][7]="";

word[3][8]="";

word[3][9]="";

word[4][0]="";

word[4][1]="";

word[4][2]="";

word[4][3]="";

word[4][4]="";

word[4][5]="";

word[4][6]="";

word[4][7]="";

word[4][8]="";

word[4][9]="";

word[5][0]="";

word[5][1]="";

word[5][2]="";

word[5][3]="";

word[5][4]="";

word[5][5]="";

word[5][6]="";

word[5][7]="";

word[5][8]="";

word[5][9]="";

word[6][0]="";

word[6][1]="";

word[6][2]="";

word[6][3]="";

word[6][4]="";

word[6][5]="";

word[6][6]="";

word[6][7]="";

word[6][8]="";

word[6][9]="";

word[7][0]="";

word[7][1]="";

word[7][2]="";

word[7][3]="";

word[7][4]="";

word[7][5]="";

word[7][6]="";

word[7][7]="";

word[7][8]="";

word[7][9]="";

word[8][0]="";

word[8][1]="";

word[8][2]="";

word[8][3]="";

word[8][4]="";

word[8][5]="";

word[8][6]="";

word[8][7]="";

word[8][8]="";

word[8][9]="";

word[9][0]="";

word[9][1]="";

word[9][2]="";

word[9][3]="";

word[9][4]="";

word[9][5]="";

word[9][6]="";

word[9][7]="";

word[9][8]="";

word[9][9]="";

}

}

 

public class printUI {

int rows;

int cols;

public printUI(wordMany zy)

{

for (rows=0;rows<10;rows++)

{

for (cols=0;cols<10;cols++)

System.out.print(zy.word[rows][cols]);

 System.out.println();

}

}

}

import java.util.Scanner;

public class Lianliankan {

 

public static void main(String[] args) {

Scanner input=new Scanner(System.in);

wordMany zy=new wordMany(); //初始界面

new printUI(zy); //出入初始界面

judgeDirection xx=new judgeDirection();

while(true)

{

System.out.println("请输入汉字");

String n=input.nextLine();

xx.remove(n); //开始消除

}

 

}

 

}

 这里也附上我前面的思考和最后的代码,我也知道自己这很简单,但是,能写出来并且运行出来,还是很欣慰的。


但是我也知道未来要学的要写的程序远远不及这些简单,我现在也要沉住气,好好学慢慢学,争取以后作出更好的程序来


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值