首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Python程序转换为Java

Python程序转换为Java
EN

Stack Overflow用户
提问于 2010-01-21 21:12:33
回答 8查看 1.2K关注 0票数 2

所以,我开始上我的第二节计算机科学课!对于我的第一个类,我们使用了python,对于这个类,我们使用了Java。我们的第一个任务(差不多就是练习)是把这个垃圾程序从Python转换成Java,我正经历着一段地狱般的时光。

有没有人能帮我做点什么,并给我一些建议?也许是一个适合初学者的好网站……某种程度上了解Python的人(仅从第一门CS课程的角度来看)。

1)在python中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def winCraps():
roll = rollDice()
if roll == 7 or roll == 11:
    return True
elif roll == 2 or roll == 3 or roll == 12:
    return False
else:
    return rollForPoint(roll)

这是我将其转换为java的尝试。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public int winCraps{
    roll = rollDice();
    if (roll = 7 && 11){
    return (true);
    }
    else (roll =2 && 3 && 12){
    return(false);
    }
    else{
    return rollforPoint(roll);
}
}

2) Python

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def rollDice():
raw_input("Press <Enter> to roll...")
die1 = randrange(1,7)
die2 = randrange(1,7)
sum = die1 + die2
print "You rolled", die1, "+", die2, "=", sum
return sum

这件事把我搞糊涂了。在Java中,randrange会是什么??

Java

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
static int rollDice(){
System.out.print("Press <Enter> to roll...");
double die1 = Math.random();
double die2 = Math.random();
die1 = (int) die1*6+1;
 die2 = (int) die2*6+1;
 int sum = (int)die1 + (int)die2;
 System.out.println("You rolled  "+die1+ " + "+die2+ " = "+sum+".");
 return sum;
 }

*请记住,我只是在学习这些东西,哈哈

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2010-01-21 21:16:56

您需要修复if语句"==“操作符检查是否相等,并且必须将要检查的变量放在语句的每个部分中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public int winCraps{
    roll = rollDice();
    if (roll == 7 || roll == 11) {
        return true;
    }
    else if(roll == 2 || roll == 3 || roll == 12) {
        return false;
    }
    else{
        return rollforPoint(roll);
    }
}

在rollDice()方法中,为每个骰子赋值的方式是不正确的。我建议阅读随机数(因为这是家庭作业,我把它留给你)。

此外,请记住,在java中,您必须始终以分号结束每条语句。

票数 2
EN

Stack Overflow用户

发布于 2010-01-21 21:24:02

在Java语言中会是什么?

您可以通过调用nextInt(int n)方法从Java类中获取特定范围内的随机整数。例如,

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Random rand = new Random();
int a = rand.nextInt(7);

这与>=中的randrange不完全相同,但您可以将其用作对象数组的索引,或用作单个骰子的值。

票数 2
EN

Stack Overflow用户

发布于 2010-01-21 21:18:52

随机范围可以被java.util.Random中的方法替代。像Python一样,Java有一个广泛的标准库,您应该参考一下。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2112952

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文