Java:如何初始化String ?
错误
% javac StringTest.java StringTest.java:4: variable errorSoon might not have been initialized errorSoon[0] = "Error, why?";
码
public class StringTest { public static void main(String[] args) { String[] errorSoon; errorSoon[0] = "Error, why?"; } }
您需要初始化 errorSoon
,如错误消息所示,您只声明了它。
String[] errorSoon; // <--declared statement String[] errorSoon = new String[100]; // <--initialized statement
您需要初始化数组,以便在开始设置索引之前为String
元素分配正确的内存。
如果你只声明数组(如你所做的那样),那么没有为String
元素分配内存,但是只有对errorSoon
的引用句柄,并且当你试图在任何索引处初始化一个variables时会抛出一个错误。
作为一个方面说明,你也可以初始化大括号内的String
数组, { }
String[] errorSoon = {"Hello", "World"};
相当于
String[] errorSoon = new String[2]; errorSoon[0] = "Hello"; errorSoon[1] = "World";
String[] args = new String[]{"firstarg", "secondarg", "thirdarg"};
String[] errorSoon = { "foo", "bar" };
– 要么 –
String[] errorSoon = new String[2]; errorSoon[0] = "foo"; errorSoon[1] = "bar";
我相信你刚刚从C ++迁移,那么在Java中,你必须初始化一个数据types(除了原始types和string不被认为是Java中的原始types)使用它们作为根据他们的规格,如果你不它就像一个空的引用variables(很像C ++上下文中的指针)。
public class StringTest { public static void main(String[] args) { String[] errorSoon = new String[100]; errorSoon[0] = "Error, why?"; //another approach would be direct initialization String[] errorsoon = {"Error , why?"}; } }
String[] errorSoon = new String[n];
n是需要保存多less个string。
你可以在声明中做到这一点,也可以在没有String []的情况下做,只要在尝试使用它之前。
你总是可以这样写
String[] errorSoon = {"Hello","World"}; For (int x=0;x<errorSoon.length;x++) // in this way u create a for loop that would like display the elements which are inside the array errorSoon.oh errorSoon.length is the same as errorSoon<2 { System.out.println(" "+errorSoon[x]); // this will output those two words, at the top hello and world at the bottom of hello. }
string声明:
String str;
string初始化
String[] str=new String[3];//if we give string[2] will get Exception insted str[0]="Tej"; str[1]="Good"; str[2]="Girl"; String str="SSN";
我们可以得到string中的个性:
char chr=str.charAt(0);`//output will be S`
如果我想要获得像这样的个性化Ascii值:
System.out.println((int)chr); //output:83
现在我想将Ascii值转换为Charecter / Symbol。
int n=(int)chr; System.out.println((char)n);//output:S
String[] string=new String[60]; System.out.println(string.length);
它初始化并获得STRING LENGTH代码非常简单的方式为初学者