岩紙はさみの最初の試合前に書かれた、コードは(:説明するよう大きすぎ、後のメンテナンスが難しい、複雑なロジックであるhttps://www.cnblogs.com/1355861728--qqcom/p/11959565.html)
だから、今回は維持し、後から拡張しやすいインターフェースとメソッドコールのバージョンを書き込みます。
あなたがプログラムを書く前に、まず第一に、あなたは最初のゲームのニーズを理解する必要があります。
1.コンピュータの世代とすべての民「岩、紙、はさみ」の結果のいずれか。
2.コンピュータとそれぞれの「値」を比較し、その結果(値を表す:岩、紙、はさみ)を出力します。
私は、コードを書き始めました。
デマンド[1]
/ *
人物コンピュータインターフェースと新しいインターフェース、および前記生成(乱数値:0〜2)独自の乱数:
* /
パブリックインターフェイスコンピュータ{
int型computerIntResult =新しいランダム()nextInt(3)。
}
パブリックインターフェース人{
INT personIntResult =新しいランダム()nextInt(3)。
}
/ *
1.コンピュータと人間が生成される数値、私たちの最終的な出力は漢字で「じゃんけん」であるのに対し、そのため私たちは仮想int型と文字列の変換プロセスを持っている必要がありますので、その変更クラス。
2.において変更作成したクラスchangeShowの方法は、
3名の値は、人間とコンピュータの結果を区別するために使用される
前記変更番号の乱数とコンピュータを受信するための値。
5.作成stringRandomNumberの順序ができた後に、書き込みサイクル場合、仮想変換結果出力用の変数、= NULLをクリアする前の値を。
6.においてスイッチ発現は我々変更番号の値(個人用コンピュータまたは乱数)が、上を通過する時、0である stringRandomNumberの鋏(1及び2に説明されていない)値。
7.最終的な出力:人/コンピュータが出ている:はさみ/岩/布
* /
パブリッククラスの変更 {
ます。public void changeShow(文字列名、int型のchangenumber){
文字列stringRandomNumber = NULL;
スイッチ (変更番号){
ケース0:
stringRandomNumber = "剪刀"。
ブレーク;
ケース1:
stringRandomNumber = "布"。
ブレーク;
ケース2:
stringRandomNumber = "石头"。
ブレーク;
デフォルト:
休憩;
}
System.out.println( "です。"名前+ + stringRandomNumber);
}
}
デマンド[2]
/ *
1書き込みクラスが実装し、人のコンピュータインタフェースの比較、このクラスは、コンピュータの結果とそれぞれの値を比較するために使用されます。
2.テストクラスにテストを呼び出すために便利な後にクラスのshowメソッドを記述します。
3.書き込み2つの出力文プロンプトの乱数を生成し、それぞれの人間とコンピュータがどのくらいです。
4.それぞれchangeShow方法およびコンピュータ内部の呼び出しクラスの変更、および乱数文字の出力を達成するために、changeShow方法のchangenumber内部の人に乱数を割り当てます。
乱数と決意のコンピュータ人間の最終的な結果。
* /
public class Compare implements Computer,Person{
public static void show(){
System.out.println("电脑随机数为:"+computerIntResult);
System.out.println("人的随机数为:"+personIntResult);
Change change= new Change();
change.changeShow("Computer",computerIntResult);
change.changeShow("Person",personIntResult);
if(computerIntResult>personIntResult){
System.out.println("最终结果是:电脑获胜!");
}else if(computerIntResult==personIntResult){
System.out.println("最终结果是:平局!");
}else{
System.out.println("最终结果是:人获胜!");
}
}
}
/*
最后编写测试类TestMain直接调用Compare类中的show方法
*/
public class TestMain {
Compare compare = new Compare();
public static void main(String [] args){
Compare.show();
}
}
/*
输出结果(例举一种):
*/
电脑随机数为:0
人的随机数为:2
Computer出的是:剪刀
Person出的是:石头
最终结果是:人获胜!
【以下为完整代码】