我工作的地方所有转换项目int来String都是这样完成的:
int i = 5;
String strI = "" + i;
Run Code Online (Sandbox Code Playgroud)
我不熟悉Java.这是通常的做法,还是有些不对劲,正如我想的那样?
假设字符串a和b:
a += b
a = a.concat(b)
Run Code Online (Sandbox Code Playgroud)
引擎盖下,它们是一样的吗?
这里以concat反编译为参考.我希望能够反编译+运算符以查看它的作用.
public String concat(String s) {
int i = s.length();
if (i == 0) {
return this;
}
else {
char ac[] = new char[count + i];
getChars(0, count, ac, 0);
s.getChars(0, i, ac, count);
return new String(0, count + i, ac);
}
}
Run Code Online (Sandbox Code Playgroud) 有时java困惑我.
我有大量的int初始化.
什么是真正的差异?
Integer.toString(i)new Integer(i).toString()我正在为课堂写一个程序.这是一个彩票游戏.这是给出的问题:
写一个java程序.程序应该有一个名为lotteryNumber()的方法,它应该接受两个整数,最大和最小数字,并且应该随机生成并返回这两个数字之间的数字(包括两者).
另外,提供一个名为checkWinner()的方法,该方法应该接受两个数组(一个用于抽奖号码,一个用于用户号码)并检查它们是否相同(相同的数字和序列).如果它们相同,则应返回true,否则返回false.请使用您自己的逻辑来使用相等运算符检查相等性.不允许使用像Arrays.equals()这样的预构建函数!
在main方法中,使用lotteryNumber()方法随机生成4个数字,介于0-10(包括两者)之间.然后要求用户从键盘输入0到10之间的数字.然后使用checkWinner()方法检查并显示用户是否为胜利者.
我的问题是使用lotteryNumber方法.我怎么应该只返回一个数字而不使用数组并仍然生成4个数字?请记住,我一般都是数组和java的新手,我需要将彩票号放在main方法的数组中,以便我可以将它们与用户输入进行比较.或者至少这就是我的问题
这就是我现在所拥有的.对不起,它是如此混乱,我一直在尝试不同的东西,希望弄明白
import java.util.Random;
import java.util.Scanner;
public class Assignment04 {
public static void main (String [] args){
Scanner input = new Scanner (System.in);
Random r = new Random ();
int [] user= new int [4];
//int [] rand= new int [4];
int rand1= r.nextInt(10);
int rand2= r.nextInt(10);
int rand3 = lotteryNumber(rand1,rand2);
/*for (int i=0; i<rand.length; i++){
rand [i] = r.nextInt(11);
}
for (int j=0; j<rand.length; j++){
System.out.print(rand[j]+",");
}*/
System.out.println("");
System.out.print("Enter number 1 between (1-10)= ");
user[0] …Run Code Online (Sandbox Code Playgroud) 在普通的Java中,有许多种方法可以将整数转换为字符串,例如5变为"5"。这篇文章中的答案有几个很好的建议,String.valueOf(number)是我的最爱。
我的问题是Groovy是否提供其他/更好的方式来做到这一点?还是Java方法仍然是要走的路。
所以我看到了这个问题,它提供了几种将整数转换为字符串的方法,但我想知道它们之间是否有任何区别.
如果我想将整数i转换为字符串,那么这三种方式之间是否存在差异(并且比其他方式更快)?
i+""
Integer.toString(i)
String.valueOf(i)
Run Code Online (Sandbox Code Playgroud)
我会倾向于使用第二个或第三个,因为第一个对我来说似乎很奇怪.另一方面,如果我想将整数i转换为字符串然后将其连接到另一个字符串s,我可以这样做:
i+s
Integer.toString(i)+s
String.valueOf(i)+s
Run Code Online (Sandbox Code Playgroud)
在这里,我倾向于使用第一个,因为无论如何我都在连接.但我的问题是:这里应该使用哪些标准做法,以及这三种方法之间的差异(如果有的话)究竟是什么?