-1

JavaScript で同じものを作成しましたが、JavaScript は初めてで、変換方法がわかりません... :/

<script language="JavaScript">
<!--
var randomString = new Array ();
randomString[0] = "a random string";
randomString[1] = "another random string";
randomString[2] = "another random string";
randomString[3] = "another random string";
randomString[4] = "another random string";
randomString[5] = "another random string";
randomString[6] = "another random string";
randomString[7] = "another random string";
var i = Math.floor(7*Math.random())

document.write(randomString[i]);
//-->
</script>
4

2 に答える 2

4

Java にはいくつかのオプションがあります。String 配列を使用して、ここで使用したのと同じ戦略を実現できます。

String[] randomString = new String[8];
randomString[0] = "a random string";
randomString[1] = "another random string";
randomString[2] = "another random string";
randomString[3] = "another random string";
randomString[4] = "another random string";
randomString[5] = "another random string";
randomString[6] = "another random string";
randomString[7] = "another random string";
int i = Math.floor(randomString.length * Math.random());

System.out.println(randomString[i]);

もう 1 つのオプションは、Java Collections Frameworkを使用し、List のようなものを使用することです。

List<String> randomStrings = new LinkedList<String>();
randomStrings.add("a random string");
randomStrings.add("another random string");
randomStrings.add("another random string");

リストを取得したら、いくつかのことを実行できます。

Collections.shuffle(randomStrings);
System.out.println(randomStrings.get(0));

また:

int i = Math.floor(randomStrings.size() * Math.random());
System.out.println(randomStrings.get(i));

Collections.shuffle は実際にリストを変更し、要素をシャッフルするので、注意してください。

于 2013-01-10T22:25:58.783 に答える
0

私の Java は少し錆びていますが、これはどうですか?

List<String> s = new List<String>(); //better than an array, because those are bounded
s.add("this is a string"); // first string
//repeat

int i = new Random().nextInt(s.size()); 
//from 0 - size exclusive, and the array starts at 0, so this is good

String result = s.get(i);
于 2013-01-10T22:21:49.863 に答える