
其实是很简单的程序,就是无限循环和条件表达式的运用而已。代码如下:
import javautilScanner;public class ElectronicDog {
private static double timeLeft = 0; // 剩余时间
private static int happiness = 1; // 幸福值(初始为1)
private static int energy = 2; // 能量值(初始为2)
private static Scanner sc;
private static double sleepTimeLeft = 10; // 睡眠时间间隔,超过则小狗离开
private static double feedTimeLeft = 0; // 饲养时间间隔,小于间隔则无效
public static void main(String[] args) {
sc = new Scanner(Systemin);
int days = 0;
// 输入天数
while(days <= 0) {
Systemoutprint("Play time (day(s)): ");
days = scnextInt();
if(days <= 0) {
Systemoutprintln("Please input a valid time");
}
}
// 剩余时间就是天数乘以24小时
timeLeft = days 24;
while(timeLeft > 0) { // 如果剩余时间小于0则游戏结束
showState();
if(happiness <= 0) { // 幸福值小于0时结束
Systemoutprintln("The dog is out of happiness and has left");
break;
}
if(energy <= 0) { // 能量值小于0时结束
Systemoutprintln("The dog is out of energy and has died");
break;
}
if(sleepTimeLeft <= 0) { // 睡眠时间超过时结束
Systemoutprintln("The dog does not sleep within 10 hours and has left");
break;
}
Command ops = getCommand();
if(ops == CommandSleep) { // 如果是让宠物睡觉则睡眠时间重置
sleepTimeLeft = 10;
} else { // 如果不是让宠物睡觉则睡眠时间减去任务消耗时间
if(ops == CommandFeed) {
if(feedTimeLeft > 0) { // 如果太过频繁喂养,则本次命令无效
continue;
} else { // 如果喂养有效,则喂养时间重置
feedTimeLeft = 3;
}
}
sleepTimeLeft -= opstimeSpent;
}
feedTimeLeft -= opstimeSpent;
happiness += opshappinessGained;
energy += opsenergyConsumed;
timeLeft -= opstimeSpent;
}
if(timeLeft <= 0) { // 如果是正常游戏时间结束才能看到这一句
Systemoutprintln("Play time is over");
}
}
/
显示宠物状态
/
private static void showState() {
Systemoutprintln("--------------------------------");
Systemoutprintln("Time left: " + getTime());
Systemoutprintln("Dog's happiness: " + happiness);
Systemoutprintln("Dog's energy: " + energy);
}
/
命令宠物行为
@return 返回 *** 作明细
/
private static Command getCommand() {
Systemoutprintln("1 Walk\r\n2 Feed\r\n3 Sleep\r\n4 Play");
int choice = 0;
while(choice <= 0 || choice > 4) {
Systemoutprint("Choice: ");
if(schasNextInt()) {
choice = scnextInt();
}
}
Command cmd = Commandvalues()[choice - 1];
return cmd;
}
private static String getTime() {
int hour = (int) Mathfloor(timeLeft);
double min = timeLeft - hour;
return Stringformat("%02d : %02d", hour, (int) (min 60));
}
}
/
对小狗发出的命令
/
enum Command {
Walk(1, 3, -2), Feed(05f, 1, 5), Sleep(8, -8, -4), Play(2, 2, -1);
public float timeSpent;
public int happinessGained;
public int energyConsumed;
private Command(float timeSpent, int happinessGained, int energyConsumed) {
thistimeSpent = timeSpent;
thishappinessGained = happinessGained;
thisenergyConsumed = energyConsumed;
}
}
部分截图如下
在activity中实现这个两个方法 :
这个是android WIFI设置的代码,可以参考下
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menuadd(MenuNONE, MENU_ID_SCAN, 0, Rstringwifi_menu_scan)
setIcon(Rdrawableic_menu_scan_network);
menuadd(MenuNONE, MENU_ID_ADVANCED, 0, Rstringwifi_menu_advanced)
setIcon(androidRdrawableic_menu_manage);
return superonCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (itemgetItemId()) {
case MENU_ID_SCAN:
if (mWifiManagerisWifiEnabled()) {
mScannerresume();
}
return true;
case MENU_ID_ADVANCED:
startActivity(new Intent(this, AdvancedSettingsclass));
return true;
}
return superonOptionsItemSelected(item);
}
C语言中,程序文件本身是文本格式,如果只是查看代码的话,可以这样做:
1、打开记事本
2、使用文件中的“打开”菜单
3、在d出的对话框中选择文件类型为“所有文件”,然后再浏览到程序文件,点击打开。
但是如果需要在编译器环境中进行调试或编译等 *** 作,则必须使用编译器,编译器必须使用与C语言文件在编写时使用的环境要求,不同的编译器提供的库函数不同,不能混用。
以上就是关于JAVA大神来帮忙啊,ECLIPSE编写一个小程序类似于电子宠物的。弄完截图过来也行,行了就加大悬赏,谢谢!全部的内容,包括:JAVA大神来帮忙啊,ECLIPSE编写一个小程序类似于电子宠物的。弄完截图过来也行,行了就加大悬赏,谢谢!、用eclipse软件编写一个Android应用小程序,急需成品,谢谢、用Eclipse怎么运行写好的C/S小程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)