&引用;java.lang.NullPointerException“;拆分字符串时
我在java方面并不像我所学的那样精通,我在以下位置面临着这个错误:chararray=s.toCharArray(); 我不知道原因。虽然我已经使数组大小过大,但仍然不清楚 我添加了另一个函数,它将发送到crossover&引用;java.lang.NullPointerException“;拆分字符串时,java,nullpointerexception,Java,Nullpointerexception,我在java方面并不像我所学的那样精通,我在以下位置面临着这个错误:chararray=s.toCharArray(); 我不知道原因。虽然我已经使数组大小过大,但仍然不清楚 我添加了另一个函数,它将发送到crossover ..... public void chr_intval(){ int[] array = new int[100] ; float[]af = new float[6];
.....
public void chr_intval(){
int[] array = new int[100] ;
float[]af = new float[6];
String [] gf =new String[7]; // for generating generation therefore copying
Random randomGenerator = new Random();
System.out.println("Chromosome Genes Integer value f(x) f'(x) Fitness ratio");
for(int i=1,j=1 ; i<=6; i++,j++){
array[i] = randomGenerator.nextInt(100); // generate random 6 integers from 1<x<100
float[] ar2 = new float[array.length];
ar2[i]= (float)array[i];
System.out.println("C"+j+ " "+Genes(array[i])+" "+array[i]+" "+f_x(ar2[i])+" "+fitness_function(f_x(array[i]))+" ");//+fit_ratio(fitness_function(f_x(array[i])))); // print c1, c2,....
af = new float[array.length];
// gf= new String[array.length];
af[i]= fitness_function(f_x(array[i]));
gf[i]= Genes(array[i]); // send to cross_over
// System.out.println(fit_ratio(af));
}
// System.out.print("gf"+gf[2]);
Cross_over(gf,af);
}
public void Cross_over(String[] gf, float[] af) {
// System.out.print("gf"+gf[3]); all values are coming successfully
char[] charArrays = new char[1000];
Character[] characterArray = new Character[charArrays.length];
int i = 0;
for(int j = 0; j < af.length; j++) { // comparing fit-funct
if(af[j] > af[0]){
af[0]= af[j];
}
}
if(af[0] >= 95) {
System.out.println("candidate's fitness "+af[0]);
}
else{ // start cross-over by tokenizing the array
// charArrays[] = gf.toCharArray();
for (String s : gf) {
charArrays = s.toCharArray(); // <--- Error here
}
}
for(int y = 0; y < 8; y++) {
System.out.print( characterArray[y] );
}
}
。。。。。
公共无效chr_intval(){
int[]数组=新的int[100];
浮动[]af=新浮动[6];
String[]gf=新字符串[7];//用于生成复制
Random randomGenerator=新的Random();
系统输出println(“染色体基因整数值f(x)f’(x)适合度比”);
对于(inti=1,j=1;iNPE,此处:
charArrays = s.toCharArray();
表示s
为null
,因此gf
中至少有一个元素为null
您应该在此行之前选中s!=null
,或者确保从不将null
元素添加到gf
NPE此处:
charArrays = s.toCharArray();
表示s
为null
,因此gf
中至少有一个元素为null
您应该在此行之前选中s!=null
,或者确保从不将null
元素添加到gf
NPE此处:
charArrays = s.toCharArray();
表示s
为null
,因此gf
中至少有一个元素为null
您应该在此行之前选中s!=null
,或者确保从不将null
元素添加到gf
NPE此处:
charArrays = s.toCharArray();
表示s
为null
,因此gf
中至少有一个元素为null
您应该在此行之前选中s!=null
,或者确保从不将null
元素添加到gf
,尝试以下操作:
for (String s : gf)
{
if(s!=null)
{
charArrays = s.toCharArray();
}
}
试试这个:
for (String s : gf)
{
if(s!=null)
{
charArrays = s.toCharArray();
}
}
试试这个:
for (String s : gf)
{
if(s!=null)
{
charArrays = s.toCharArray();
}
}
试试这个:
for (String s : gf)
{
if(s!=null)
{
charArrays = s.toCharArray();
}
}
确保gf
中的所有String
都不是null
。测试使chararray
等于gf
中的每个字符串有什么意义?确保gf
中的所有String
都不是null
。测试使chararray
等于每个strin有什么意义g在gf
中?确保gf
中的所有字符串都不是null
。测试使chararray
等于gf
中的每个字符串有什么意义?确保gf
中的所有字符串都不是null
。测试使chararray
等于gf
中的每个字符串?它现在给我空我编辑了代码它现在给我空我编辑了代码它现在给我空我编辑了代码它现在给我空我编辑了代码