我是菜鸟.
问大家一个for循环的问题.希望大家可以帮我解决!
int invoiceNum =10;
int invoiceNumX;
String arrValue ="11,15,";
for(int i=0;i<3; i++)
{
invoiceNumX = invoiceNum++; //为 10,11,12
String[] arrValueX = arrValue.split(",");
for(int j=0;j<arrValueX.length ;j++)
{
if(String.valueOf(invoiceNumX).equals(arrValueX[j]))
{
//System.out.println("包含有的发票号码是====="+arrValueX[j]);
//arrValueX[j].
//invoiceNumX++;
//continue ;
break;
}
}
System.out.println("是====="+invoiceNum);
}现在的问题是这样的: 如果检测到arrValue 的值跟arrValueX[j]有相同的,就跳出!继续往下执行!累加!
像上面的程序 最终应该输出为: 10,12,13
问大家一个for循环的问题.希望大家可以帮我解决!
int invoiceNum =10;
int invoiceNumX;
String arrValue ="11,15,";
for(int i=0;i<3; i++)
{
invoiceNumX = invoiceNum++; //为 10,11,12
String[] arrValueX = arrValue.split(",");
for(int j=0;j<arrValueX.length ;j++)
{
if(String.valueOf(invoiceNumX).equals(arrValueX[j]))
{
//System.out.println("包含有的发票号码是====="+arrValueX[j]);
//arrValueX[j].
//invoiceNumX++;
//continue ;
break;
}
}
System.out.println("是====="+invoiceNum);
}现在的问题是这样的: 如果检测到arrValue 的值跟arrValueX[j]有相同的,就跳出!继续往下执行!累加!
像上面的程序 最终应该输出为: 10,12,13
这条我靠连蒙带猜可以大概理解LZ的意思,所以略过2.两条println前面都有"包含有的发票号码是=====","是====="的字样..
如何只输出10,12,13..3.如果检测到arrValue 的值跟arrValueX[j]有相同的...
arrValueX[j]就是从arrValue拆分出来的啊...equals的话肯定不会相同的,相信我
int invoiceNumX;
String arrValue ="11,15,";
String[] arrValueX = arrValue.split(",");
boolean flag = false;
for(int i=0;i <3; ){
invoiceNumX = invoiceNum++; //为 10,11,12
for(int j=0;j <arrValueX.length ;j++){
if(String.valueOf(invoiceNumX).equals(arrValueX[j])){
flag = true;
break;
}
}
if(flag){
flag = false;
continue;
}
System.out.println("是====="+invoiceNumX);
i++;
}
}
int invoiceNumX;
String arrValue ="11,15,";
String[] arrValueX = arrValue.split(",");
boolean flag = false;
for(int i=0;i <3; ){
invoiceNumX = invoiceNum++; //为 10,11,12
for(int j=0;j <arrValueX.length ;j++){
if(String.valueOf(invoiceNumX).equals(arrValueX[j])){
flag = true;
break;
}
}
if(flag){
flag = false;
continue;
}
System.out.println("是====="+invoiceNumX);
i++;
}
}
比如:上面的程序,11不是相同嘛.那就跳过. 输出 10,12,13
加分!!其它的楼主,我难道说的还不清楚嘛?qsrock 为什么可以理解呢!
还是谢谢大家!!
public class Test { public static void main(String[] args) {
int invoiceNum =10;
int invoiceNumX;
String arrValue ="11,15,";
String[] arrValueX = arrValue.split(",");
boolean flag = false;
for(int i=0;i <3; ){
invoiceNumX = invoiceNum++; //为 10,11,12
for(int j=0;j <arrValueX.length ;j++){
if(String.valueOf(invoiceNumX).equals(arrValueX[j])){
flag = true;
break;
}
}
if(flag){
flag = false;
continue;
}
System.out.println(invoiceNumX);
i++;
} }
}
放错地方了放在
break;
}
System.out.println("是====="+invoiceNum);
}
} 2.invoiceNumX = invoiceNum++; //为 10,11,12
不对 这是 11 12 13
你要想检查10 11 12 13这四个数,就要循环4次不是3次
就要
invoiceNumX = invoiceNum;
...
break;
}
System.out.println("是====="+invoiceNum);
}
invoiceNum++;
} 3.还有你逻辑纯在严重问题,说都不会话了,写的代码逻辑也不正确,建议lz换个职业吧
垃圾!